@memberjunction/core 6.1.0-edge.0 → 6.1.0-edge.2

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 (77) hide show
  1. package/dist/generic/InMemoryLocalStorageProvider.d.ts +6 -0
  2. package/dist/generic/InMemoryLocalStorageProvider.d.ts.map +1 -1
  3. package/dist/generic/InMemoryLocalStorageProvider.js +6 -0
  4. package/dist/generic/InMemoryLocalStorageProvider.js.map +1 -1
  5. package/dist/generic/baseEngineRegistry.d.ts +14 -0
  6. package/dist/generic/baseEngineRegistry.d.ts.map +1 -1
  7. package/dist/generic/baseEngineRegistry.js +32 -0
  8. package/dist/generic/baseEngineRegistry.js.map +1 -1
  9. package/dist/generic/baseEntity.d.ts +366 -29
  10. package/dist/generic/baseEntity.d.ts.map +1 -1
  11. package/dist/generic/baseEntity.js +872 -96
  12. package/dist/generic/baseEntity.js.map +1 -1
  13. package/dist/generic/dataHooks.d.ts +5 -0
  14. package/dist/generic/dataHooks.d.ts.map +1 -1
  15. package/dist/generic/dataHooks.js +27 -3
  16. package/dist/generic/dataHooks.js.map +1 -1
  17. package/dist/generic/databaseProviderBase.d.ts +44 -17
  18. package/dist/generic/databaseProviderBase.d.ts.map +1 -1
  19. package/dist/generic/databaseProviderBase.js +96 -52
  20. package/dist/generic/databaseProviderBase.js.map +1 -1
  21. package/dist/generic/entityCompanion.d.ts +218 -0
  22. package/dist/generic/entityCompanion.d.ts.map +1 -0
  23. package/dist/generic/entityCompanion.js +170 -0
  24. package/dist/generic/entityCompanion.js.map +1 -0
  25. package/dist/generic/entityInfo.d.ts +21 -0
  26. package/dist/generic/entityInfo.d.ts.map +1 -1
  27. package/dist/generic/entityInfo.js +21 -0
  28. package/dist/generic/entityInfo.js.map +1 -1
  29. package/dist/generic/entitySavePlan.d.ts +199 -0
  30. package/dist/generic/entitySavePlan.d.ts.map +1 -0
  31. package/dist/generic/entitySavePlan.js +213 -0
  32. package/dist/generic/entitySavePlan.js.map +1 -0
  33. package/dist/generic/entityTransactionScope.d.ts +125 -0
  34. package/dist/generic/entityTransactionScope.d.ts.map +1 -0
  35. package/dist/generic/entityTransactionScope.js +115 -0
  36. package/dist/generic/entityTransactionScope.js.map +1 -0
  37. package/dist/generic/interfaces.d.ts +122 -35
  38. package/dist/generic/interfaces.d.ts.map +1 -1
  39. package/dist/generic/interfaces.js +27 -0
  40. package/dist/generic/interfaces.js.map +1 -1
  41. package/dist/generic/localCacheManager.d.ts +123 -5
  42. package/dist/generic/localCacheManager.d.ts.map +1 -1
  43. package/dist/generic/localCacheManager.js +254 -9
  44. package/dist/generic/localCacheManager.js.map +1 -1
  45. package/dist/generic/providerBase.d.ts +112 -0
  46. package/dist/generic/providerBase.d.ts.map +1 -1
  47. package/dist/generic/providerBase.js +303 -9
  48. package/dist/generic/providerBase.js.map +1 -1
  49. package/dist/generic/relatedRecordBatchLoader.d.ts +39 -0
  50. package/dist/generic/relatedRecordBatchLoader.d.ts.map +1 -0
  51. package/dist/generic/relatedRecordBatchLoader.js +154 -0
  52. package/dist/generic/relatedRecordBatchLoader.js.map +1 -0
  53. package/dist/generic/relatedRecordCollection.d.ts +588 -0
  54. package/dist/generic/relatedRecordCollection.d.ts.map +1 -0
  55. package/dist/generic/relatedRecordCollection.js +1020 -0
  56. package/dist/generic/relatedRecordCollection.js.map +1 -0
  57. package/dist/generic/saveEntityGraphOperation.d.ts +148 -0
  58. package/dist/generic/saveEntityGraphOperation.d.ts.map +1 -0
  59. package/dist/generic/saveEntityGraphOperation.js +157 -0
  60. package/dist/generic/saveEntityGraphOperation.js.map +1 -0
  61. package/dist/generic/telemetryManager.d.ts +21 -1
  62. package/dist/generic/telemetryManager.d.ts.map +1 -1
  63. package/dist/generic/telemetryManager.js +21 -6
  64. package/dist/generic/telemetryManager.js.map +1 -1
  65. package/dist/index.d.ts +6 -1
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +6 -3
  68. package/dist/index.js.map +1 -1
  69. package/dist/views/runView.d.ts +66 -0
  70. package/dist/views/runView.d.ts.map +1 -1
  71. package/dist/views/runView.js.map +1 -1
  72. package/package.json +3 -3
  73. package/readme.md +195 -1
  74. package/dist/generic/runReport.d.ts +0 -25
  75. package/dist/generic/runReport.d.ts.map +0 -1
  76. package/dist/generic/runReport.js +0 -38
  77. package/dist/generic/runReport.js.map +0 -1
@@ -1,8 +1,11 @@
1
1
  import { EntityFieldInfo, EntityInfo, EntityFieldTSType, EntityPermissionType, RecordChange, ValidationResult, EntityRelationshipInfo } from './entityInfo.js';
2
- import { EntityDeleteOptions, EntitySaveOptions, IEntityDataProvider, IMetadataProvider, IRunQueryProvider, IRunReportProvider, IRunViewProvider, SimpleEmbeddingResult } from './interfaces.js';
2
+ import { EntityDeleteOptions, EntitySaveOptions, IEntityDataProvider, IMetadataProvider, IRunQueryProvider, IRunViewProvider, SimpleEmbeddingResult } from './interfaces.js';
3
3
  import { UserInfo } from './securityInfo.js';
4
4
  import { TransactionGroupBase } from './transactionGroup.js';
5
5
  import { CompositeKey, FieldValueCollection } from './compositeKey.js';
6
+ import { RelatedRecordCollection, RelatedRecordCollectionOptions } from './relatedRecordCollection.js';
7
+ import { EntityCompanion, EntityCompanionDeserializeMode, EntityCompanionPayload } from './entityCompanion.js';
8
+ import { EntitySavePlan } from './entitySavePlan.js';
6
9
  import { Subscription } from 'rxjs';
7
10
  import { z } from 'zod';
8
11
  /**
@@ -325,8 +328,15 @@ export declare class BaseEntityEvent {
325
328
  * - `new_record`: Raised when NewRecord() is called
326
329
  * - `transaction_ready`: Used to indicate that a transaction is ready to be submitted for execution. The TransactionGroup class uses this to know that all async preprocessing is done and it can now submit the transaction.
327
330
  * - `remote-invalidate`: Raised when a remote server (via Redis pub/sub → GraphQL subscription) notifies this client that cached data for an entity has changed. Used to trigger BaseEngine re-fetch from server.
331
+ * - `graph_save_started`, `graph_save`: Raised on the ROOT entity of a multi-record composite
332
+ * save (a parent plus the children contributed by its companions) when the unit of work begins
333
+ * and when it settles. These are *in addition to* the per-record `save_started` / `save`
334
+ * events, which still fire for every node in the graph — the graph events let a caller observe
335
+ * the unit of work as a whole, e.g. to refresh a form once rather than once per line.
336
+ * Payload: `{ Success, NodeCount, Error? }` on `graph_save`; `{ NodeCount }` on
337
+ * `graph_save_started`.
328
338
  */
329
- type: 'new_record' | 'save' | 'delete' | 'load_complete' | 'transaction_ready' | 'save_started' | 'delete_started' | 'load_started' | 'remote-invalidate' | 'other';
339
+ type: 'new_record' | 'save' | 'delete' | 'load_complete' | 'transaction_ready' | 'save_started' | 'delete_started' | 'load_started' | 'remote-invalidate' | 'graph_save_started' | 'graph_save' | 'other';
330
340
  /**
331
341
  * If type === 'save' this property can either be 'create' or 'update' to indicate the type of save operation that was performed.
332
342
  */
@@ -395,6 +405,21 @@ export declare abstract class BaseEntity<T = unknown> {
395
405
  * authoritative source.
396
406
  */
397
407
  private _raw;
408
+ /**
409
+ * Per-instance memo for values `Get()` derives from `_raw` — a parsed `Date`, an rtrimmed
410
+ * fixed-width string. Lazily created; only converted fields ever get an entry.
411
+ *
412
+ * This deliberately does NOT write back into `_raw`. `LoadFromData`'s fast path keeps the
413
+ * caller's row BY REFERENCE, and that row is frequently a LocalCacheManager entry, which the
414
+ * cache deep-freezes on reference-sharing providers. Memoizing into the row therefore made a
415
+ * plain field READ throw — and gating that write on a once-sampled `Object.isFrozen` could
416
+ * not be made correct, because the freeze is asynchronous relative to the consumer (cache
417
+ * writes are not always awaited), so the sample can be stale by the first read.
418
+ *
419
+ * Keeping the memo here makes freeze timing irrelevant AND restores the optimization on
420
+ * frozen rows, which the isFrozen-guard version had to give up.
421
+ */
422
+ private _rawConverted;
398
423
  /**
399
424
  * Whether a database record has been loaded into this instance (via `Load`, `NewRecord`,
400
425
  * `LoadFromData`, etc.). Used to gate operations that require loaded state and to distinguish
@@ -567,21 +592,21 @@ export declare abstract class BaseEntity<T = unknown> {
567
592
  */
568
593
  private _childEntities;
569
594
  /**
570
- * Opaque provider-level transaction handle. Used by IS-A save/delete orchestration
571
- * to share a single SQL transaction across the parent chain.
572
- * On client (GraphQLDataProvider), this remains null.
573
- * On server (SQLServerDataProvider), this holds a sql.Transaction.
574
- */
575
- private _providerTransaction;
576
- /**
577
- * Gets the provider transaction handle for IS-A chain orchestration.
595
+ * The active transaction scope owned by this entity, when it is the participant that opened (or
596
+ * joined) one for a multi-record unit of work an IS-A parent chain or a composite save graph.
597
+ *
598
+ * Only the *initiator* holds a scope; other participants in the same unit of work simply write
599
+ * into the provider's ambient transaction without knowing it exists. That is the whole point of
600
+ * routing through the provider: participants stay ignorant of one another.
578
601
  */
579
- get ProviderTransaction(): unknown;
602
+ private _entityTransactionScope;
580
603
  /**
581
- * Sets the provider transaction handle. Used during IS-A save/delete to share
582
- * a single database transaction across the entire parent chain.
604
+ * Companions registered on this entity, keyed by {@link EntityCompanion.Name}.
605
+ *
606
+ * Lazily created so that the overwhelming majority of entities — which declare no companions —
607
+ * pay nothing for the feature, not even an empty Map per instance.
583
608
  */
584
- set ProviderTransaction(value: unknown);
609
+ private _companions;
585
610
  /**
586
611
  * Returns the parent entity in the IS-A composition chain, or null if this
587
612
  * entity is not an IS-A child type.
@@ -711,10 +736,273 @@ export declare abstract class BaseEntity<T = unknown> {
711
736
  */
712
737
  Hydrate(data: Record<string, unknown>): void;
713
738
  /**
714
- * Propagates the ProviderTransaction handle down the IS-A parent chain so all
715
- * entities in the chain execute on the same database transaction.
739
+ * The companions registered on this entity, in declaration order.
740
+ *
741
+ * Empty for the vast majority of entities. Nothing in the save, load or validation paths does
742
+ * any companion work when this is empty, so the feature costs nothing where it is unused.
743
+ */
744
+ get Companions(): readonly EntityCompanion[];
745
+ /**
746
+ * Whether this entity has any registered companions.
747
+ *
748
+ * Used as the fast guard on the hot paths — a single boolean check keeps single-record saves on
749
+ * exactly the code path they took before companions existed.
750
+ */
751
+ get HasCompanions(): boolean;
752
+ /**
753
+ * Registers a companion on this entity. Called from a subclass constructor or field
754
+ * initialiser, normally via {@link DeclareRelatedRecords}.
755
+ *
756
+ * @typeParam TCompanion - The companion type.
757
+ * @param companion - The companion to register.
758
+ * @returns The same companion, so it can be assigned to a readonly field in one expression.
759
+ * @throws When a companion with the same name is already registered — a duplicate name would
760
+ * make the wire payload ambiguous and silently drop one of the two.
761
+ */
762
+ protected RegisterCompanion<TCompanion extends EntityCompanion>(companion: TCompanion): TCompanion;
763
+ /**
764
+ * Looks up a registered companion by name.
765
+ *
766
+ * @typeParam TCompanion - The expected companion type.
767
+ * @param name - The companion's {@link EntityCompanion.Name}.
768
+ * @returns The companion, or `undefined` when none is registered under that name.
769
+ */
770
+ GetCompanion<TCompanion extends EntityCompanion = EntityCompanion>(name: string): TCompanion | undefined;
771
+ /**
772
+ * Declares a typed child collection on this entity and registers it as a companion.
773
+ *
774
+ * This is the entry point for composite entities. Call it from a field initialiser on a
775
+ * **shared** (client + server) subclass so both tiers see the collection — a declaration that
776
+ * exists only in a server-side class makes the collection invisible to the browser, which is
777
+ * exactly the limitation this feature removes.
778
+ *
779
+ * @typeParam TChild - The child entity type.
780
+ * @param options - The collection declaration.
781
+ * @returns The registered collection.
782
+ *
783
+ * @example
784
+ * ```typescript
785
+ * public readonly Lines = this.DeclareRelatedRecords<OrderLineEntity>({
786
+ * Name: 'Lines',
787
+ * ChildEntity: 'MJ_BizApps_Orders: Order Lines',
788
+ * ForeignKey: 'OrderHeaderID',
789
+ * OrderBy: 'LineNumber ASC',
790
+ * Sequence: { Field: 'LineNumber', From: 1 },
791
+ * });
792
+ * ```
793
+ */
794
+ protected DeclareRelatedRecords<TChild extends BaseEntity = BaseEntity>(options: RelatedRecordCollectionOptions): RelatedRecordCollection<TChild>;
795
+ /**
796
+ * Serializes every registered companion that has something to send.
797
+ *
798
+ * Companions returning `null` are omitted entirely, so a header-only save on a composite entity
799
+ * ships no companion payload at all and costs nothing extra on the wire.
800
+ *
801
+ * @returns The companion payloads, in declaration order.
802
+ */
803
+ SerializeCompanions(): Promise<EntityCompanionPayload[]>;
804
+ /**
805
+ * Restores companion state from payloads produced by {@link SerializeCompanions} on the other
806
+ * tier.
807
+ *
808
+ * Payloads naming a companion this entity does not declare are **ignored rather than rejected**.
809
+ * That is deliberate: during a rolling deploy the two tiers can disagree about which companions
810
+ * exist, and a hard failure would turn a harmless version skew into an outage. The mismatch is
811
+ * logged so it is still visible.
812
+ *
813
+ * @param payloads - Companion payloads received from the other tier.
814
+ * @param mode - Whether these payloads are an inbound request (the default) or authoritative
815
+ * post-save results. See {@link EntityCompanionDeserializeMode}.
816
+ */
817
+ DeserializeCompanions(payloads: EntityCompanionPayload[], mode?: EntityCompanionDeserializeMode): Promise<void>;
818
+ /**
819
+ * Executes a multi-node plan by handing the entire unit of work to the server.
820
+ *
821
+ * Used when the provider cannot open a local transaction — i.e. from the browser. The client
822
+ * does not orchestrate the cascade; it ships intent, and the server runs the *same*
823
+ * `executeGraphLocal` path inside a real transaction. One cascade implementation, two possible
824
+ * locations.
825
+ *
826
+ * @param plan - The planned unit of work. Used for its node count in events and diagnostics;
827
+ * the server rebuilds its own plan from the payload.
828
+ * @param _options - Save options. Not forwarded over the wire: they describe local execution
829
+ * preferences, and the server applies its own.
830
+ * @returns True when the server reports the graph committed.
831
+ */
832
+ private executeGraphRemote;
833
+ /**
834
+ * Adopts the post-save state the server returned for the whole graph.
835
+ *
836
+ * Both halves matter. Refreshing only the header would leave the client holding children that
837
+ * still look unsaved — they would be re-inserted on the next save, silently duplicating rows.
838
+ *
839
+ * @param output - The server's result graph.
840
+ */
841
+ private applyGraphResult;
842
+ /**
843
+ * Gives every eager companion a chance to populate itself.
844
+ *
845
+ * Called from {@link InnerLoad} only — deliberately **not** from {@link LoadFromData}. See
846
+ * {@link RelatedRecordLoadMode} for why that distinction is load-bearing.
847
+ */
848
+ /**
849
+ * Populates this record's declared related-record collections and resolves once they are all
850
+ * ready — the one call to `await` when you want a fully-hydrated record.
851
+ *
852
+ * The point is batching. Cache-sourced collections resolve synchronously against
853
+ * `BaseEngineRegistry` and cost nothing; every database-sourced collection is gathered into a
854
+ * **single `RunViews` call** rather than one `RunView` each. So a record with four declared
855
+ * collections costs one round trip, or zero when they all read from engine caches — instead of
856
+ * the four sequential queries a naive `for (…) await c.Load()` would issue.
857
+ *
858
+ * Collections declared `'never'` are skipped: that mode means write-only staging buffer.
859
+ *
860
+ * @param names - Collection names to load. Omit to load every declared collection.
861
+ *
862
+ * @example
863
+ * ```typescript
864
+ * await action.LoadRelatedRecords(); // Params, ResultCodes and Libraries, one trip
865
+ * await agent.LoadRelatedRecords('Prompts'); // just the one
866
+ * ```
867
+ */
868
+ LoadRelatedRecords(...names: string[]): Promise<void>;
869
+ private loadEagerCompanions;
870
+ /**
871
+ * Tells every companion that the unit of work committed, so they can clear pending removals and
872
+ * rebase their dirty state.
873
+ */
874
+ private acceptCompanionChanges;
875
+ /**
876
+ * Opens a transaction scope for a multi-record unit of work rooted at this entity, when this
877
+ * entity is the initiator and is not already inside a `TransactionGroup`.
878
+ *
879
+ * Participants never ask whether a transaction is already open — the provider arbitrates and
880
+ * either starts one or joins the one in flight. See {@link EntityTransactionScope}.
881
+ *
882
+ * @param isInitiator - Whether this entity is the one orchestrating the unit of work. Non-
883
+ * initiators never open a scope; they write into the ambient transaction.
884
+ * @returns True if a scope was opened (or joined) and is now held by this entity.
885
+ */
886
+ private beginEntityTransactionScope;
887
+ /**
888
+ * Builds the ordered unit of work for saving this record and everything its companions
889
+ * contribute.
890
+ *
891
+ * The root node comes first — children need the parent's primary key, and on a create it does
892
+ * not exist until the parent row is inserted.
893
+ *
894
+ * @param includeRoot - Whether to include this record's own save. False when the caller has
895
+ * already persisted the root by other means.
896
+ * @param saveOptions - The caller's save options, forwarded to each companion so it can honor
897
+ * flags that change what counts as work (`IgnoreDirtyState`, most
898
+ * importantly — a companion that skips clean children must not skip them
899
+ * when the caller demanded a full write-out).
900
+ * @returns The plan. A `NodeCount` of 1 means there is no graph and the caller should take the
901
+ * ordinary single-record path.
902
+ */
903
+ protected BuildSavePlan(includeRoot?: boolean, saveOptions?: EntitySaveOptions): EntitySavePlan;
904
+ /**
905
+ * Builds the ordered unit of work for deleting this record and everything its companions
906
+ * contribute.
907
+ *
908
+ * Companions contribute **first**: children hold foreign keys pointing at the row that is about
909
+ * to disappear, so they must be removed before it.
910
+ *
911
+ * @returns The plan.
912
+ */
913
+ protected BuildDeletePlan(): EntitySavePlan;
914
+ /**
915
+ * Runs a multi-record save as one unit of work, choosing where it executes based on what the
916
+ * provider can do.
917
+ *
918
+ * This is the single decision point for the whole feature:
919
+ *
920
+ * - **Provider supports entity transactions** (server): execute locally inside one transaction.
921
+ * - **It does not** (client): serialize the graph and hand the entire unit of work to the
922
+ * server via the `MJ.SaveEntityGraph` remote operation, which rebuilds the records — as their
923
+ * *server-side* registered subclasses — and runs this very same local executor there.
924
+ *
925
+ * There is exactly one cascade implementation. The remote path relocates it; it never
926
+ * reimplements it. That is what keeps client and server behavior from drifting.
927
+ *
928
+ * Validation is not performed here: the root node's own `_InnerSave` runs `Validate()` (which
929
+ * fans out to every companion, over the complete child set including pending removals) before
930
+ * it writes anything, and the root node executes first. So the whole graph is validated before
931
+ * the first row lands, which is the guarantee cross-child invariants need.
932
+ *
933
+ * @param plan - The planned unit of work.
934
+ * @param options - Save options forwarded to every node.
935
+ * @returns True when the whole graph committed.
716
936
  */
717
- protected PropagateTransactionToParents(): void;
937
+ private saveGraph;
938
+ /**
939
+ * Runs a multi-record delete as one unit of work.
940
+ *
941
+ * Unlike the save path there is no remote counterpart: a delete graph carries no state that
942
+ * needs rebuilding server-side, so on a client provider the nodes execute in order over
943
+ * ordinary mutations. That is **not atomic** — a failure partway leaves earlier deletions
944
+ * committed. Callers needing an atomic multi-record delete from the browser should expose a
945
+ * dedicated remote operation, which is also what MJ's own cascade-delete tooling does.
946
+ *
947
+ * @param plan - The planned unit of work, children first.
948
+ * @param options - Delete options forwarded to every node.
949
+ * @returns True when the whole graph completed.
950
+ */
951
+ private deleteGraph;
952
+ /**
953
+ * Executes a multi-node plan locally, inside a single provider transaction.
954
+ *
955
+ * Used when the provider reports {@link IMetadataProvider.SupportsEntityTransactions} — i.e.
956
+ * server-side. The transaction is provider-arbitrated, so this composes correctly whether it is
957
+ * the outermost unit of work or nested inside an application cascade that already opened one.
958
+ *
959
+ * @param plan - The plan to run.
960
+ * @param saveOptions - Options forwarded to save nodes.
961
+ * @param deleteOptions - Options forwarded to delete nodes.
962
+ * @returns True when every node succeeded and the transaction committed.
963
+ */
964
+ private executeGraphLocal;
965
+ /**
966
+ * Builds the save options for the graph's **root** node.
967
+ *
968
+ * Copies the caller's options onto a real `EntitySaveOptions` instance and stamps
969
+ * `IsGraphNodeSave`, which is what stops the root re-entering graph planning and lets it bypass
970
+ * its own in-flight save debounce.
971
+ *
972
+ * @param source - The caller's options, if any.
973
+ * @returns Options for the root node.
974
+ */
975
+ private buildRootSaveOptions;
976
+ /**
977
+ * Builds the delete options for the graph's **root** node. Delete-path counterpart of
978
+ * {@link buildRootSaveOptions}.
979
+ *
980
+ * @param source - The caller's options, if any.
981
+ * @returns Options for the root node.
982
+ */
983
+ private buildRootDeleteOptions;
984
+ /**
985
+ * Records a graph-level failure on this entity's result history.
986
+ *
987
+ * Without this the caller gets a bare `false` while `LatestResult` still holds the *root's*
988
+ * successful save — so a child failure reads as "it just didn't work". Mirrors the parent-chain
989
+ * failure handling in `_InnerSave`.
990
+ *
991
+ * @param message - The failure detail.
992
+ */
993
+ private registerGraphFailure;
994
+ /**
995
+ * Commits the transaction scope held by this entity, if any. Safe to call unconditionally — a
996
+ * no-op when this entity holds no scope.
997
+ */
998
+ private commitEntityTransactionScope;
999
+ /**
1000
+ * Rolls back the transaction scope held by this entity, if any. Safe to call unconditionally.
1001
+ *
1002
+ * Rollback failures are logged and swallowed: this runs on the failure path, and throwing here
1003
+ * would replace the caller's real error with a secondary one that explains less.
1004
+ */
1005
+ private rollbackEntityTransactionScope;
718
1006
  /**
719
1007
  * 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.
720
1008
  */
@@ -727,10 +1015,6 @@ export declare abstract class BaseEntity<T = unknown> {
727
1015
  * Returns the RunQueryProvider to be used for a given instance of a BaseEntity derived subclass.
728
1016
  */
729
1017
  get RunQueryProviderToUse(): IRunQueryProvider;
730
- /**
731
- * Returns the RunReportProvider to be used for a given instance of a BaseEntity derived subclass.
732
- */
733
- get RunReportProviderToUse(): IRunReportProvider;
734
1018
  /**
735
1019
  * This method can be used to register a callback for events that will be raised by the instance of the BaseEntity object. The callback will be called with a
736
1020
  * BaseEntityEvent object that contains the type of event and any payload that is associated with the event. Subclasses of the BaseEntity can define their
@@ -870,8 +1154,21 @@ export declare abstract class BaseEntity<T = unknown> {
870
1154
  GetFieldByCodeName(codeName: string): EntityField | null;
871
1155
  /**
872
1156
  * 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.
1157
+ *
1158
+ * @remarks
1159
+ * Dirtiness rolls up **companions** as well as fields. Without that rollup, a clean parent with
1160
+ * three brand-new children reports `Dirty === false`, `_InnerSave` takes its not-dirty early
1161
+ * return, and the children are silently never persisted — the save reports success and writes
1162
+ * nothing. See {@link EntityCompanion.Dirty}.
873
1163
  */
874
1164
  get Dirty(): boolean;
1165
+ /**
1166
+ * Whether any registered companion holds unsaved work.
1167
+ *
1168
+ * Guarded on {@link HasCompanions} so entities without companions — nearly all of them — do no
1169
+ * extra work on this hot path.
1170
+ */
1171
+ private get companionsDirty();
875
1172
  /**
876
1173
  * Returns an array of all primary key fields for the entity. If the entity has a composite primary key, this method will return an array of all primary key fields.
877
1174
  * If the entity has a single primary key, this method will return an array with a single field in it.
@@ -929,6 +1226,8 @@ export declare abstract class BaseEntity<T = unknown> {
929
1226
  * @param FieldName
930
1227
  * @returns
931
1228
  */
1229
+ /** Records a value derived from `_raw` so later reads skip the conversion. See {@link _rawConverted}. */
1230
+ private memoizeRawConversion;
932
1231
  Get(FieldName: string): any;
933
1232
  /**
934
1233
  * NOTE: Do not call this method directly. Use the {@link From} method instead
@@ -1126,11 +1425,6 @@ export declare abstract class BaseEntity<T = unknown> {
1126
1425
  * (default), always returns true to continue the cascade.
1127
1426
  */
1128
1427
  private shouldDeleteParentAfterChildDelete;
1129
- /**
1130
- * Helper to rollback an IS-A provider transaction if one is active.
1131
- * Only called by the IS-A initiator (the leaf entity that started the chain).
1132
- */
1133
- private RollbackISATransaction;
1134
1428
  private finalizeSave;
1135
1429
  /**
1136
1430
  * 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.
@@ -1234,6 +1528,12 @@ export declare abstract class BaseEntity<T = unknown> {
1234
1528
  * @returns Promise<boolean> - Returns true if the load was successful
1235
1529
  */
1236
1530
  LoadFromData(data: any, _replaceOldValues?: boolean): Promise<boolean>;
1531
+ /**
1532
+ * Extracts and applies a companion payload carried inside a plain data object, if present.
1533
+ *
1534
+ * @param data - The plain object passed to {@link LoadFromData}.
1535
+ */
1536
+ private deserializeCompanionsFromData;
1237
1537
  /**
1238
1538
  * This method is used automatically within Save() and is used to determine if the state of the object is valid relative to the validation rules that are defined in metadata. In addition, sub-classes can
1239
1539
  * override or wrap this base class method to add other logic for validation.
@@ -1241,13 +1541,41 @@ export declare abstract class BaseEntity<T = unknown> {
1241
1541
  * @returns ValidationResult The validation result
1242
1542
  */
1243
1543
  Validate(): ValidationResult;
1544
+ /**
1545
+ * Fans synchronous validation out to every registered companion.
1546
+ *
1547
+ * @param result - The accumulating result companions contribute to.
1548
+ */
1549
+ private validateCompanions;
1550
+ /**
1551
+ * Fans asynchronous validation out to every registered companion.
1552
+ *
1553
+ * @remarks
1554
+ * Called from `_InnerSave` **independently of `DefaultSkipAsyncValidation`**. That flag lets an
1555
+ * entity opt out of its *own* expensive async rules; extending it to companions silently
1556
+ * disabled cross-child invariants, which is precisely how `OrderEntityServer.ValidateAsync` —
1557
+ * containing both the "cannot confirm an order with no lines" guard and the entire per-line
1558
+ * validation loop — became dead code on every save in production. Companion async validation
1559
+ * runs whenever companions are present.
1560
+ *
1561
+ * @param result - The accumulating result companions contribute to.
1562
+ */
1563
+ private validateCompanionsAsync;
1244
1564
  /**
1245
1565
  * Default value for whether async validation should be skipped.
1246
- * Subclasses can override this property to enable async validation by default.
1247
- * When the options object is passed to Save(), and it includes a value for the
1248
- * SkipAsyncValidation property, that value will take precedence over this default.
1566
+ *
1567
+ * @remarks
1568
+ * Override this to state a policy explicitly; an explicit override always wins over the
1569
+ * inference described below. When the options object passed to `Save()` includes
1570
+ * `SkipAsyncValidation`, that value takes precedence over both.
1571
+ *
1572
+ * **If no subclass overrides this getter**, the answer is inferred instead: async validation
1573
+ * runs when a subclass has overridden {@link ValidateAsync}, and is skipped when none has.
1574
+ * Reading the literal `true` below as "async validation is off unless you find this getter"
1575
+ * made every hand-written `ValidateAsync` a silent no-op — see the note on that method.
1249
1576
  *
1250
1577
  * @see {@link Save}
1578
+ * @see {@link ValidateAsync}
1251
1579
  *
1252
1580
  * @protected
1253
1581
  */
@@ -1260,6 +1588,15 @@ export declare abstract class BaseEntity<T = unknown> {
1260
1588
  * 1. This should NEVER be called INSTEAD of the synchronous Validate() method
1261
1589
  * 2. This is meant to be overridden by subclasses that need to perform async validations
1262
1590
  * 3. The base implementation just returns success - no actual validation is performed
1591
+ * 4. Overriding this method is what turns it on. You do NOT also have to override
1592
+ * {@link DefaultSkipAsyncValidation} — that getter is for stating a policy explicitly, and
1593
+ * an explicit override of it (either value) still wins. To suppress async validation for one
1594
+ * call, pass `SkipAsyncValidation: true` in the save options.
1595
+ *
1596
+ * Point 4 used to be the opposite, and it was not discoverable: `DefaultSkipAsyncValidation`
1597
+ * defaults to `true`, so an override written against this docstring alone never ran. It reads
1598
+ * as enforced, reviews as enforced, and was not — the failure mode that let an order confirm
1599
+ * with no lines in production.
1263
1600
  *
1264
1601
  * Subclasses should override this to add complex validations that require database queries
1265
1602
  * or other async operations that cannot be performed in the synchronous Validate() method.
@@ -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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"}