@memberjunction/core 5.21.0 → 5.23.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 (40) hide show
  1. package/dist/generic/baseEngine.js +1 -1
  2. package/dist/generic/baseEngine.js.map +1 -1
  3. package/dist/generic/entityInfo.d.ts +17 -0
  4. package/dist/generic/entityInfo.d.ts.map +1 -1
  5. package/dist/generic/entityInfo.js +17 -0
  6. package/dist/generic/entityInfo.js.map +1 -1
  7. package/dist/generic/interfaces.d.ts +159 -23
  8. package/dist/generic/interfaces.d.ts.map +1 -1
  9. package/dist/generic/interfaces.js +1 -2
  10. package/dist/generic/interfaces.js.map +1 -1
  11. package/dist/generic/localCacheManager.d.ts +22 -3
  12. package/dist/generic/localCacheManager.d.ts.map +1 -1
  13. package/dist/generic/localCacheManager.js +96 -54
  14. package/dist/generic/localCacheManager.js.map +1 -1
  15. package/dist/generic/metadata.d.ts +32 -1
  16. package/dist/generic/metadata.d.ts.map +1 -1
  17. package/dist/generic/metadata.js +37 -0
  18. package/dist/generic/metadata.js.map +1 -1
  19. package/dist/generic/providerBase.d.ts +22 -1
  20. package/dist/generic/providerBase.d.ts.map +1 -1
  21. package/dist/generic/providerBase.js +131 -36
  22. package/dist/generic/providerBase.js.map +1 -1
  23. package/dist/generic/scoring/ReciprocalRankFusion.d.ts +45 -0
  24. package/dist/generic/scoring/ReciprocalRankFusion.d.ts.map +1 -0
  25. package/dist/generic/scoring/ReciprocalRankFusion.js +63 -0
  26. package/dist/generic/scoring/ReciprocalRankFusion.js.map +1 -0
  27. package/dist/generic/telemetryManager.d.ts +29 -2
  28. package/dist/generic/telemetryManager.d.ts.map +1 -1
  29. package/dist/generic/telemetryManager.js +1 -0
  30. package/dist/generic/telemetryManager.js.map +1 -1
  31. package/dist/generic/util.d.ts +46 -0
  32. package/dist/generic/util.d.ts.map +1 -1
  33. package/dist/generic/util.js +60 -0
  34. package/dist/generic/util.js.map +1 -1
  35. package/dist/index.d.ts +1 -0
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js +1 -0
  38. package/dist/index.js.map +1 -1
  39. package/package.json +2 -2
  40. package/readme.md +6 -0
@@ -60,38 +60,81 @@ export type ProviderType = typeof ProviderType[keyof typeof ProviderType];
60
60
  */
61
61
  export declare class PotentialDuplicate extends CompositeKey {
62
62
  ProbabilityScore: number;
63
+ /** Full vector metadata snapshot from the vector DB (Name, Description, EntityIcon, etc.) */
64
+ VectorMetadata?: Record<string, string>;
65
+ }
66
+ /**
67
+ * Configuration options for duplicate detection behavior.
68
+ * Controls retrieval, scoring, hybrid search, and reranking parameters.
69
+ */
70
+ export interface DuplicateDetectionOptions {
71
+ /** ID of an existing Duplicate Run record to continue */
72
+ DuplicateRunID?: string;
73
+ /** Number of nearest neighbors to retrieve per record (default: 5) */
74
+ TopK?: number;
75
+ /** Enable post-retrieval reranking via BaseReranker (default: false) */
76
+ ReRankingEnabled?: boolean;
77
+ /** AI Model ID for the reranker; if omitted, uses default reranker */
78
+ ReRankingModelID?: string;
79
+ /** Max candidates to send to reranker per record (default: all retrieved) */
80
+ ReRankingTopK?: number;
81
+ /** Fusion method when combining vector + keyword results (default: 'rrf') */
82
+ FusionMethod?: 'rrf' | 'weighted';
83
+ /** Weight for keyword search in hybrid mode: 0.0 = pure vector, 1.0 = pure keyword (default: 0.3) */
84
+ KeywordSearchWeight?: number;
85
+ /** Enable incremental mode — only check records not in a completed prior run (default: false) */
86
+ IncrementalOnly?: boolean;
87
+ /**
88
+ * Re-vectorize records before detection (default: false).
89
+ * When false, assumes vectors already exist in the index from a prior sync.
90
+ * Set to true to force a fresh vectorization pass before running detection.
91
+ */
92
+ Revectorize?: boolean;
93
+ /** Progress callback invoked at natural milestones during detection */
94
+ OnProgress?: (progress: DuplicateDetectionProgress) => void;
95
+ /**
96
+ * Override the entity document's PotentialMatchThreshold for this run.
97
+ * Value between 0 and 1 (e.g., 0.30 = 30%). If omitted, uses the entity document's value.
98
+ */
99
+ PotentialMatchThreshold?: number;
100
+ /**
101
+ * Override the entity document's AbsoluteMatchThreshold for this run.
102
+ * Value between 0 and 1. If omitted, uses the entity document's value.
103
+ */
104
+ AbsoluteMatchThreshold?: number;
105
+ }
106
+ /**
107
+ * Progress information emitted during long-running duplicate detection operations.
108
+ */
109
+ export interface DuplicateDetectionProgress {
110
+ Phase: 'Vectorizing' | 'Loading' | 'Embedding' | 'Querying' | 'Matching' | 'Merging';
111
+ TotalRecords: number;
112
+ ProcessedRecords: number;
113
+ MatchesFound: number;
114
+ CurrentRecordID?: string;
115
+ ElapsedMs: number;
63
116
  }
64
117
  /**
65
118
  * Request parameters for finding potential duplicate records.
66
- * Supports various matching strategies including list-based and document-based comparisons.
67
- * Can use either a pre-defined list or entity document for duplicate detection.
119
+ * Supports list-based batch detection and single-record checks.
68
120
  */
69
121
  export declare class PotentialDuplicateRequest {
70
- /**
71
- * The ID of the entity the record belongs to
72
- **/
122
+ /** The ID of the entity the record belongs to */
73
123
  EntityID: string;
74
- /**
75
- * The ID of the List entity to use
76
- **/
77
- ListID: string;
78
- /**
79
- * The Primary Key values of each record
80
- * we're checking for duplicates
81
- */
124
+ /** The ID of the List entity to use for batch detection (optional — if omitted, records are loaded directly from the entity) */
125
+ ListID?: string;
126
+ /** The Primary Key values of each record being checked for duplicates */
82
127
  RecordIDs: CompositeKey[];
83
- /**
84
- * The ID of the entity document to use
85
- **/
128
+ /** The ID of the entity document defining the vectorization template */
86
129
  EntityDocumentID?: string;
87
- /**
88
- * The minimum score in order to consider a record a potential duplicate
89
- **/
130
+ /** Optional saved view ID — run this view to determine which records to check */
131
+ ViewID?: string;
132
+ /** Optional SQL filter applied to the entity to determine which records to check */
133
+ ExtraFilter?: string;
134
+ /** Minimum score to consider a record a potential duplicate */
90
135
  ProbabilityScore?: number;
91
- /**
92
- * Additional options to pass to the provider
93
- **/
94
- Options?: any;
136
+ /** Detection options controlling retrieval, scoring, and behavior */
137
+ Options?: DuplicateDetectionOptions;
95
138
  }
96
139
  /**
97
140
  * Result of a potential duplicate search for a single record.
@@ -674,7 +717,100 @@ export interface IRunViewProvider {
674
717
  * @returns Response containing status and fresh data only for stale caches
675
718
  */
676
719
  RunViewsWithCacheCheck?<T = unknown>(params: RunViewWithCacheCheckParams[], contextUser?: UserInfo): Promise<RunViewsWithCacheCheckResponse<T>>;
720
+ /**
721
+ * Performs a full-text search across all entities that have FullTextSearchEnabled=true in their metadata.
722
+ * Uses the database-native full-text search capabilities (SQL Server FREETEXT via CodeGen-generated functions,
723
+ * PostgreSQL tsvector/GIN indexes, etc.) through the existing RunView + UserSearchString infrastructure.
724
+ *
725
+ * @param params Search parameters including the search text and optional entity name filter
726
+ * @param contextUser Optional user context for permissions and row-level security
727
+ * @returns Array of search results grouped by entity, with title, snippet, and relevance score
728
+ *
729
+ * @see {@link FullTextSearchParams} for parameter details
730
+ * @see {@link FullTextSearchResult} for result structure
731
+ * @see /packages/MJCore/docs/FULL_TEXT_SEARCH_GUIDE.md for comprehensive documentation
732
+ */
733
+ FullTextSearch(params: FullTextSearchParams, contextUser?: UserInfo): Promise<FullTextSearchResult>;
677
734
  }
735
+ /**
736
+ * Parameters for the FullTextSearch method.
737
+ */
738
+ export type FullTextSearchParams = {
739
+ /**
740
+ * The search text to find across entities. This is passed as UserSearchString to RunView,
741
+ * which routes it through the database-native full-text search infrastructure
742
+ * (SQL Server FREETEXT functions or PostgreSQL tsvector queries).
743
+ */
744
+ SearchText: string;
745
+ /**
746
+ * Optional list of entity names to restrict the search to. Each entity in this list
747
+ * MUST have FullTextSearchEnabled=true — entities without FTS enabled will be silently skipped.
748
+ * If not provided, ALL entities with FullTextSearchEnabled=true are searched.
749
+ */
750
+ EntityNames?: string[];
751
+ /**
752
+ * Maximum number of rows to return per entity. Defaults to 10 if not specified.
753
+ * Helps control result set size when searching across many entities.
754
+ */
755
+ MaxRowsPerEntity?: number;
756
+ };
757
+ /**
758
+ * A single matched record from a full-text search.
759
+ */
760
+ export type FullTextSearchResultItem = {
761
+ /**
762
+ * The name of the entity this result came from (e.g., "MJ: AI Models")
763
+ */
764
+ EntityName: string;
765
+ /**
766
+ * The primary key value of the matched record
767
+ */
768
+ RecordID: string;
769
+ /**
770
+ * The display title for this result, sourced from the entity's best "name" field
771
+ * (Name, Title, Subject, etc.)
772
+ */
773
+ Title: string;
774
+ /**
775
+ * A text snippet providing context for the match, sourced from the entity's best
776
+ * "description" field (Description, Summary, Body, etc.). Truncated to ~200 chars.
777
+ */
778
+ Snippet: string;
779
+ /**
780
+ * Relevance score for ranking. Uses rank-based scoring (1/(rank+1)) to be
781
+ * compatible with Reciprocal Rank Fusion (RRF) when combined with vector search results.
782
+ */
783
+ Score: number;
784
+ };
785
+ /**
786
+ * Result of a FullTextSearch operation across multiple entities.
787
+ */
788
+ export type FullTextSearchResult = {
789
+ /**
790
+ * Whether the search completed successfully
791
+ */
792
+ Success: boolean;
793
+ /**
794
+ * Error message if Success is false
795
+ */
796
+ ErrorMessage?: string;
797
+ /**
798
+ * All matched records across all searched entities, ordered by relevance score descending
799
+ */
800
+ Results: FullTextSearchResultItem[];
801
+ /**
802
+ * Total number of results found
803
+ */
804
+ TotalCount: number;
805
+ /**
806
+ * Number of entities that were searched
807
+ */
808
+ EntitiesSearched: number;
809
+ /**
810
+ * Time taken to execute the search in milliseconds
811
+ */
812
+ ElapsedMs: number;
813
+ };
678
814
  /**
679
815
  * Client-side cache status information for a single RunView request.
680
816
  * Sent to the server to determine if cached data is still current.
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/generic/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAG,YAAY,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC5J,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,QAAQ,EAAE,0BAA0B,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AACrH,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,SAAS,EAAE,mBAAmB,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACxL,OAAO,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAElE;;;;GAIG;AACH,qBAAa,sBAAsB,CAAC,CAAC,GAAG,GAAG;IACvC,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,eAAe,CAAgB;IACvC,OAAO,CAAC,iBAAiB,CAAkB;IAC3C,OAAO,CAAC,KAAK,CAAI;IACjB,OAAO,CAAC,uBAAuB,CAAkB;IAEjD,IAAW,IAAI,IAAI,CAAC,CAEnB;IACD,IAAW,cAAc,IAAI,MAAM,EAAE,CAEpC;IACD,IAAW,gBAAgB,IAAI,MAAM,CAEpC;IACD,IAAW,cAAc,IAAI,MAAM,EAAE,CAEpC;IACD,IAAW,sBAAsB,IAAI,OAAO,CAE3C;IAED;;;;;;;OAOG;gBACS,IAAI,EAAE,CAAC,EAAE,gBAAgB,GAAE,MAAe,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,sBAAsB,GAAE,OAAc;CASvJ;AAED;;;;GAIG;AACH,qBAAa,YAAY;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,EAAE,IAAI,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,YAAY,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAG1E;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,YAAY;IAChD,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED;;;;GAIG;AACH,qBAAa,yBAAyB;IAClC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;OAEG;IACH,OAAO,CAAC,EAAE,GAAG,CAAC;CACjB;AAED;;;;GAIG;AACH,qBAAa,wBAAwB;;IAQjC,QAAQ,EAAE,MAAM,CAAC;IACjB,kBAAkB,EAAE,YAAY,CAAC;IACjC,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,gCAAgC,EAAE,MAAM,EAAE,CAAC;CAC9C;AAED;;;;GAIG;AACH,qBAAa,0BAA0B;IACnC,MAAM,EAAE,YAAY,GAAG,SAAS,GAAG,OAAO,CAAC;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wBAAwB,EAAE,wBAAwB,EAAE,CAAC;CACxD;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,MAAM,CAAC,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5D,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,YAAY,EAAE,YAAY,EAAE,yBAAyB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,GAAI,OAAO,CAAC,EAAE,CAAC,CAAA;IAEvH,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,iBAAiB,GAAI,OAAO,CAAC,EAAE,CAAC,CAAA;IAElF,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,QAAQ,GAAI,OAAO,CAAC,OAAO,CAAC,CAAA;IAE3F,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IAEzF;;;;;;;;;;OAUG;IACH,kBAAkB,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;IAExI;;;;;;;;;OASG;IACH,oBAAoB,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC,CAAC;IAErI;;;;;OAKG;IACH,mBAAmB,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEzC;;;OAGG;IACH,oBAAoB,CAAC,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEnD;;;OAGG;IACH,sBAAsB,CAAC,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED;;;;GAIG;AACH,qBAAa,iBAAiB;IAC1B;;OAEG;IACH,gBAAgB,EAAE,OAAO,CAAS;IAClC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAS;IACtC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAS;IACpC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAS;IAC7B;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAS;IAErC;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAa;IAE1C;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAS;IAErC;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;CACrC;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAC5B;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAS;IAEtC;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAS;IAEpC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAS;IAE7B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAS;CAC1C;AAED;;;GAGG;AACH,qBAAa,kBAAkB;CAE9B;AAED;;;GAGG;AACH,qBAAa,qBAAqB;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,YAAY,CAAC;CAC9B;AAED;;;GAGG;AACH,qBAAa,sBAAsB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,YAAY,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACtB;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,qBAAqB;IAClC;;;;OAIG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEhE;;;;;OAKG;IACH,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtE;;;;OAIG;IACH,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtD;;;;OAIG;IACH,aAAa,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhD;;;OAGG;IACH,eAAe,CAAC,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACzD;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;;OAIG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/D;;;;OAIG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEnD;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAClD;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAC9B,IAAI,YAAY,IAAI,YAAY,CAAA;IAEhC,IAAI,kBAAkB,IAAI,GAAG,CAAA;IAE7B,MAAM,CAAC,UAAU,EAAE,sBAAsB,EAAE,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE/F,IAAI,QAAQ,IAAI,UAAU,EAAE,CAAA;IAE5B;;;OAGG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;IAExD;;;OAGG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAA;IAEpD,IAAI,YAAY,IAAI,eAAe,EAAE,CAAA;IAErC,IAAI,WAAW,IAAI,QAAQ,CAAA;IAE3B,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAA;IAEvB,IAAI,uBAAuB,IAAI,0BAA0B,EAAE,CAAA;IAE3D,IAAI,aAAa,IAAI,gBAAgB,EAAE,CAAA;IAEvC,IAAI,cAAc,IAAI,iBAAiB,EAAE,CAAA;IAEzC,IAAI,OAAO,IAAI,SAAS,EAAE,CAAA;IAE1B,IAAI,WAAW,IAAI,cAAc,EAAE,CAAA;IAEnC,IAAI,eAAe,IAAI,iBAAiB,EAAE,CAAA;IAE1C,IAAI,gBAAgB,IAAI,mBAAmB,EAAE,CAAA;IAE7C,IAAI,aAAa,IAAI,eAAe,EAAE,CAAA;IAEtC,IAAI,eAAe,IAAI,kBAAkB,EAAE,CAAA;IAE3C,IAAI,iBAAiB,IAAI,mBAAmB,EAAE,CAAA;IAE9C,IAAI,WAAW,IAAI,cAAc,EAAE,CAAA;IAEnC,IAAI,SAAS,IAAI,YAAY,EAAE,CAAA;IAE/B,IAAI,SAAS,IAAI,WAAW,EAAE,CAAA;IAE9B,IAAI,8BAA8B,IAAI,sBAAsB,EAAE,CAAA;IAE9D,IAAI,0BAA0B,IAAI,sBAAsB,EAAE,CAAA;IAE1D,IAAI,oBAAoB,IAAI,YAAY,EAAE,CAAA;IAE1C,IAAI,mBAAmB,IAAI,YAAY,EAAE,CAAA;IAEzC,IAAI,WAAW,IAAI,WAAW,CAAA;IAE9B,qBAAqB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAA;IAE7C;;;;;;OAMG;IACH,eAAe,CAAC,CAAC,SAAS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IAE7F;;;;;;;OAOG;IACH,eAAe,CAAC,CAAC,SAAS,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;IACpH;;;;;;;OAOG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAElG;;;;OAIG;IACH,mBAAmB,CAAC,MAAM,EAAE,yBAAyB,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;IAEnH;;;;OAIG;IACH,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAA;IAEtE;;;;;;;;;;;;OAYG;IACH,YAAY,CAAC,OAAO,EAAE,kBAAkB,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAG3H;;;;;;;;;OASG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;IAEpI;;;;;;OAMG;IACH,oBAAoB,CAAC,IAAI,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAA;IAEtI;;;;;;;OAOG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAEzH;;;;;;OAMG;IACH,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IAE7F,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEjI,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAElJ,sBAAsB,IAAI,OAAO,CAAC,oBAAoB,CAAC,CAAA;IAEvD,OAAO,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5D,eAAe,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpE,yBAAyB,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE9E,IAAI,oBAAoB,IAAI,qBAAqB,CAAA;IAEjD;;;;OAIG;IACH,IAAI,kBAAkB,IAAI,mBAAmB,GAAG,IAAI,CAAA;IAEpD,+BAA+B,CAAC,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpF,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3C,8BAA8B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;IAE/C;;;;;;;;;OASG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,iBAAiB,EAAE,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;IAC5L;;;;OAIG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;IAEhL;;;;;OAKG;IACH,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAExI;;;;;OAKG;IACH,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAEnG;;;;;OAKG;IACH,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAEpG;;;;;OAKG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAExG;;;;;OAKG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAElH;;;;;OAKG;IACH,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE7F;;;;;OAKG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,MAAM,CAAA;IAEtF;;;;OAIG;IACH,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE5F;;OAEG;IACH,IAAI,UAAU,IAAI,sBAAsB,CAAA;CAC3C;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,KAAK,EAAE,cAAc,CAAC;IACtB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,GAAG,GAAG,IAAI;IACjC;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAClB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;IAErC;;;OAGG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAEhC;;;;;;;;;;;;;;OAcG;IACH,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;CAC5B,CAAA;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC7B,MAAM,CAAC,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5D,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1F,QAAQ,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAE/F;;;;;;;OAOG;IACH,sBAAsB,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,2BAA2B,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,CAAA;CAClJ;AAMD;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC7B;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,2BAA2B,GAAG;IACtC;;OAEG;IACH,MAAM,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,WAAW,CAAC,EAAE,kBAAkB,CAAC;CACpC,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,GAAG,OAAO,IAAI;IACxC;;;OAGG;IACH,WAAW,EAAE,CAAC,EAAE,CAAC;IACjB;;;;OAIG;IACH,gBAAgB,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,2BAA2B,CAAC,CAAC,GAAG,OAAO,IAAI;IACnD;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB;;;;;OAKG;IACH,MAAM,EAAE,SAAS,GAAG,cAAc,GAAG,OAAO,GAAG,OAAO,CAAC;IACvD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;IACd;;;OAGG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACvC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACxC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,8BAA8B,CAAC,CAAC,GAAG,OAAO,IAAI;IACtD;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1C;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAA;AAMD;;;;GAIG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAC9B;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAA;AAED;;;;GAIG;AACH,MAAM,MAAM,4BAA4B,GAAG;IACvC;;OAEG;IACH,MAAM,EAAE,cAAc,CAAC;IACvB;;;;OAIG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACrC,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,4BAA4B,CAAC,CAAC,GAAG,OAAO,IAAI;IACpD;;OAEG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAChB;;;;;OAKG;IACH,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,eAAe,CAAC;IACxD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;IACd;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,gCAAgC,CAAC,CAAC,GAAG,OAAO,IAAI;IACxD;;OAEG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;OAEG;IACH,OAAO,EAAE,4BAA4B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3C;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAA;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,MAAM,CAAC,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5D,QAAQ,CAAC,MAAM,EAAE,cAAc,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;IAEjF;;;;;;OAMG;IACH,UAAU,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAEvF;;;;;;;;OAQG;IACH,wBAAwB,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,EAAE,4BAA4B,EAAE,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,CAAA;IAEpJ;;;;;;;OAOG;IACH,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAAA;CAClG;AAED;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,GAAG,EAAE,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;CACxB,CAAA;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAC/B,MAAM,CAAC,UAAU,EAAE,sBAAsB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAE5D,SAAS,CAAC,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,CAAA;CACvF;AAED;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,IAAI,CAAC;IACvB,OAAO,EAAE,qBAAqB,EAAE,CAAC;CACpC,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,GAAG,EAAE,CAAC;IACf;;OAEG;IACH,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;CACrB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;CAClB,CAAA;AAED;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,IAAI,CAAC;IACvB,iBAAiB,EAAE,iCAAiC,EAAE,CAAC;CACzD,CAAA;AAEF;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,IAAI,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAA;AAGD;;;;GAIG;AACH,qBAAa,WAAW;IACpB,WAAW,EAAE,QAAQ,CAAQ;IAG7B,WAAW,EAAE,UAAU,EAAE,CAAM;IAC/B,eAAe,EAAE,eAAe,EAAE,CAAM;IACxC,QAAQ,EAAE,QAAQ,EAAE,CAAM;IAC1B,0BAA0B,EAAE,0BAA0B,EAAE,CAAM;IAC9D,gBAAgB,EAAE,gBAAgB,EAAE,CAAM;IAC1C,iBAAiB,EAAE,iBAAiB,EAAE,CAAM;IAC5C,kBAAkB,EAAE,iBAAiB,EAAE,CAAM;IAC7C,UAAU,EAAE,SAAS,EAAE,CAAM;IAC7B,cAAc,EAAE,cAAc,EAAE,CAAM;IACtC,mBAAmB,EAAE,mBAAmB,EAAE,CAAM;IAChD,gBAAgB,EAAE,eAAe,EAAE,CAAM;IACzC,kBAAkB,EAAE,kBAAkB,EAAE,CAAM;IAC9C,oBAAoB,EAAE,mBAAmB,EAAE,CAAM;IACjD,cAAc,EAAE,cAAc,EAAE,CAAM;IACtC,YAAY,EAAE,YAAY,EAAE,CAAM;IAClC,sBAAsB,EAAE,sBAAsB,EAAE,CAAM;IACtD,YAAY,EAAE,WAAW,EAAE,CAAM;IACjC,0BAA0B,EAAE,sBAAsB,EAAE,CAAM;CAC7D;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/generic/interfaces.ts"],"names":[],"mappings":"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"}
@@ -62,8 +62,7 @@ export class PotentialDuplicate extends CompositeKey {
62
62
  }
63
63
  /**
64
64
  * Request parameters for finding potential duplicate records.
65
- * Supports various matching strategies including list-based and document-based comparisons.
66
- * Can use either a pre-defined list or entity document for duplicate detection.
65
+ * Supports list-based batch detection and single-record checks.
67
66
  */
68
67
  export class PotentialDuplicateRequest {
69
68
  }
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/generic/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../src/generic/interfaces.ts"],"names":[],"mappings":"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"}
@@ -70,20 +70,24 @@ export interface CachedRunViewData {
70
70
  maxUpdatedAt: string;
71
71
  /** Cached aggregate results, if aggregates were requested */
72
72
  aggregateResults?: AggregateResult[];
73
+ /** Total row count from the database — may differ from results.length for paginated queries */
74
+ totalRowCount?: number;
73
75
  }
74
76
  /**
75
77
  * Return type for GetRunViewResult and ApplyDifferentialUpdate.
76
- * Includes rowCount which is derived from results.length.
78
+ * Includes rowCount (derived from results.length) and totalRowCount (from the database).
77
79
  */
78
80
  export interface CachedRunViewResult {
79
81
  /** The cached result rows */
80
82
  results: unknown[];
81
83
  /** The maximum __mj_UpdatedAt timestamp from the results */
82
84
  maxUpdatedAt: string;
83
- /** Row count - always derived from results.length */
85
+ /** Row count - derived from results.length */
84
86
  rowCount: number;
85
87
  /** Cached aggregate results, if aggregates were requested */
86
88
  aggregateResults?: AggregateResult[];
89
+ /** Total row count from the database — may differ from rowCount for paginated queries */
90
+ totalRowCount?: number;
87
91
  }
88
92
  /**
89
93
  * Configuration for the LocalCacheManager
@@ -208,6 +212,13 @@ export declare class LocalCacheManager extends BaseSingleton<LocalCacheManager>
208
212
  private _initializePromise;
209
213
  private _stats;
210
214
  private _config;
215
+ /**
216
+ * Per-fingerprint mutation lock. Serializes concurrent read-modify-write
217
+ * operations (RemoveSingleEntity, UpsertSingleEntity) on the same cache entry
218
+ * to prevent lost updates when multiple entity events fire simultaneously
219
+ * (e.g., TransactionGroup batch deletes).
220
+ */
221
+ private _fingerprintLocks;
211
222
  private readonly REGISTRY_KEY;
212
223
  /**
213
224
  * Reverse index from entity name to the set of RunView cache fingerprints
@@ -456,7 +467,7 @@ export declare class LocalCacheManager extends BaseSingleton<LocalCacheManager>
456
467
  * @param maxUpdatedAt - The latest __mj_UpdatedAt from the results
457
468
  * @param aggregateResults - Optional aggregate results to cache alongside the row data
458
469
  */
459
- SetRunViewResult(fingerprint: string, params: RunViewParams, results: unknown[], maxUpdatedAt: string, aggregateResults?: AggregateResult[]): Promise<void>;
470
+ SetRunViewResult(fingerprint: string, params: RunViewParams, results: unknown[], maxUpdatedAt: string, aggregateResults?: AggregateResult[], totalRowCount?: number): Promise<void>;
460
471
  /**
461
472
  * Retrieves a cached RunView result.
462
473
  *
@@ -499,6 +510,14 @@ export declare class LocalCacheManager extends BaseSingleton<LocalCacheManager>
499
510
  * Used by BaseEngine for immediate cache sync when an entity is saved.
500
511
  * If the entity exists (by primary key), it is replaced; otherwise it is added.
501
512
  *
513
+ * Serializes async operations on the same cache fingerprint to prevent
514
+ * lost-update races. When multiple entity events fire simultaneously
515
+ * (e.g., 3 deletes from a TransactionGroup), each read-modify-write cycle
516
+ * must complete before the next one starts for the same fingerprint.
517
+ * Different fingerprints run concurrently with no contention.
518
+ */
519
+ private withFingerprintLock;
520
+ /**
502
521
  * @param fingerprint - The cache fingerprint to update
503
522
  * @param entityData - The entity data as a plain object (use entity.GetAll())
504
523
  * @param primaryKeyFieldName - Name of the primary key field
@@ -1 +1 @@
1
- {"version":3,"file":"localCacheManager.d.ts","sourceRoot":"","sources":["../../src/generic/localCacheManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyB,MAAM,wBAAwB,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAChH,OAAO,EAAuB,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtE,OAAO,EAAc,eAAe,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAgB,MAAM,gBAAgB,CAAC;AAW5D;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,kBAAkB;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,0BAA0B;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,0BAA0B;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,2CAA2C;IAC3C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,6CAA6C;IAC7C,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,MAAM,EAAE,MAAM,CAAC,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrE,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,IAAI,EAAE,MAAM,CAAC;IACb,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAC9B,6BAA6B;IAC7B,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACxC;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAChC,6BAA6B;IAC7B,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,6DAA6D;IAC7D,gBAAgB,CAAC,EAAE,eAAe,EAAE,CAAC;CACxC;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,iCAAiC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;IACrB,sDAAsD;IACtD,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,YAAY,EAAE,MAAM,CAAC;IACrB,yCAAyC;IACzC,cAAc,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,CAAC;CAC1C;AAkBD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,WAAW,iBAAiB;IAC9B;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;;OAKG;IACH,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,kBAAkB,CAAC;IAE/C;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;OAIG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;;GAGG;AACH,eAAO,MAAM,aAAa;IACtB,gCAAgC;;IAEhC,iCAAiC;;IAEjC,gCAAgC;;IAEhC,yBAAyB;;IAEzB,8CAA8C;;CAExC,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAM7E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,iBAAkB,SAAQ,aAAa,CAAC,iBAAiB,CAAC;IACnE;;OAEG;IACH,WAAkB,QAAQ,IAAI,iBAAiB,CAE9C;IAED,OAAO,CAAC,gBAAgB,CAAsC;IAC9D,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,YAAY,CAAkB;IACtC,OAAO,CAAC,kBAAkB,CAA8B;IACxD,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAAkD;IAEjE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IAExD;;;;OAIG;IACH,OAAO,CAAC,uBAAuB,CAAuC;IAEtE,SAAS;IAQT;;;;;;;;;;OAUG;IACI,UAAU,CACb,eAAe,EAAE,qBAAqB,EACtC,MAAM,CAAC,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAC1C,OAAO,CAAC,IAAI,CAAC;IAiBhB;;OAEG;YACW,YAAY;IAiB1B;;OAEG;IACH,IAAW,aAAa,IAAI,OAAO,CAElC;IAED;;OAEG;IACH,IAAW,MAAM,IAAI,uBAAuB,CAE3C;IAED;;OAEG;IACI,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,uBAAuB,CAAC,GAAG,IAAI;IAInE;;;;;;;;;OASG;IACU,kBAAkB,CAAC,WAAW,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC;IAqClF;;;;;OAKG;IACH,SAAS,CAAC,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAK1E;;;;;OAKG;IACH,SAAS,CAAC,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAK7D;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IASxB;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAY7B;;;OAGG;IACI,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC;IAQxE;;;;OAIG;IACH,OAAO,CAAC,2BAA2B;IA2BnC;;;;;;;OAOG;cACa,qBAAqB,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAoClF;;;;;OAKG;cACa,2BAA2B,CAAC,WAAW,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IA6FxF;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAKhC;;;OAGG;YACW,gCAAgC;IA2B9C;;;;OAIG;IACH,OAAO,CAAC,gBAAgB,CAAmE;IAE3F;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACI,sBAAsB,CACzB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,GAC7C,MAAM,IAAI;IAiBb;;;;;;;;;;;;;OAaG;IACI,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAgC1D;;;OAGG;IACH,IAAW,mBAAmB,IAAI,MAAM,CAEvC;IAMD;;;;;;;OAOG;IACU,UAAU,CACnB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAChD,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IA8BhB;;;;;;;OAOG;IACU,UAAU,CACnB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAChD,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;IAqBpC;;;;;;;OAOG;IACU,mBAAmB,CAC5B,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAChD,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAavB;;;;;;OAMG;IACU,YAAY,CACrB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAChD,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC;IAchB;;;;;;;OAOG;IACU,eAAe,CACxB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,qBAAqB,EAAE,GAAG,SAAS,EAChD,SAAS,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC;IAiBnB;;;;;;;;;;OAUG;IACI,0BAA0B,CAAC,MAAM,EAAE,aAAa,EAAE,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM;IAiC3F;;;;;OAKG;IACH,OAAO,CAAC,qBAAqB;IAc7B;;;;;;OAMG;IACH,OAAO,CAAC,UAAU;IAUlB;;;;;;;;;;;OAWG;IACU,gBAAgB,CACzB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,aAAa,EACrB,OAAO,EAAE,OAAO,EAAE,EAClB,YAAY,EAAE,MAAM,EACpB,gBAAgB,CAAC,EAAE,eAAe,EAAE,GACrC,OAAO,CAAC,IAAI,CAAC;IA8ChB;;;;;;;OAOG;IACU,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA+BvF;;;;OAIG;IACU,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBxE;;;;;;;;;;;;;;;;;;;;OAoBG;IACU,uBAAuB,CAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,OAAO,EAAE,EACtB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,MAAM,EACvB,eAAe,CAAC,EAAE,MAAM,EACxB,gBAAgB,CAAC,EAAE,eAAe,EAAE,GACrC,OAAO,CAAC,mBAAmB,GAAG,IAAI,CAAC;IA+DtC;;;;;;;;;;OAUG;IACU,kBAAkB,CAC3B,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,GAAG,EAAE,YAAY,EACjB,eAAe,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC;IAkCnB;;;;;;;;OAQG;IACU,kBAAkB,CAC3B,WAAW,EAAE,MAAM,EACnB,GAAG,EAAE,YAAY,EACjB,eAAe,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC;IAmCnB;;;OAGG;YACW,kBAAkB;IA2BhC;;;;;OAKG;IACU,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgCtE;;;;;;;;;;;OAWG;IACI,2BAA2B,CAC9B,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,MAAM,EAClB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACpC,gBAAgB,CAAC,EAAE,MAAM,GAC1B,MAAM;IAkBT;;;;;;;;;;OAUG;IACU,iBAAiB,CAC1B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,OAAO,EAAE,EAClB,YAAY,EAAE,MAAM,EACpB,QAAQ,CAAC,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC;IAkChB;;;;;OAKG;IACU,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QACzD,OAAO,EAAE,OAAO,EAAE,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG,IAAI,CAAC;IAmCT;;;;OAIG;IACU,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE;;;;;OAKG;IACU,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwBpE;;;;;;OAMG;IACU,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC;QAC9D,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;KACpB,GAAG,IAAI,CAAC;IAcT;;OAEG;IACI,aAAa,IAAI,cAAc,EAAE;IAIxC;;;;OAIG;IACI,gBAAgB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,EAAE;IAI/D;;OAEG;IACI,QAAQ,IAAI,UAAU;IAyB7B;;OAEG;IACI,UAAU,IAAI,MAAM;IAS3B;;;;;OAKG;IACU,WAAW,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC;IAsB/D;;;;OAIG;IACU,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC;IAsBxC;;OAEG;IACI,UAAU,IAAI,IAAI;IAQzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAa1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAWvB;;OAEG;IACH,OAAO,CAAC,aAAa;IAMrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAKvB;;OAEG;IACH,OAAO,CAAC,YAAY;IASpB;;OAEG;YACW,YAAY;IAsB1B,OAAO,CAAC,eAAe,CAA8C;IAErE;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAShC;;OAEG;YACW,eAAe;IAW7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAKpB;;OAEG;YACW,aAAa;IAgB3B;;OAEG;YACW,KAAK;CAqDtB"}
1
+ {"version":3,"file":"localCacheManager.d.ts","sourceRoot":"","sources":["../../src/generic/localCacheManager.ts"],"names":[],"mappings":"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"}
@@ -12,8 +12,8 @@ function LogStatusVerbose(message) {
12
12
  // ============================================================================
13
13
  const DEFAULT_CONFIG = {
14
14
  enabled: true,
15
- maxSizeBytes: 50 * 1024 * 1024, // 50MB
16
- maxEntries: 1000,
15
+ maxSizeBytes: 150 * 1024 * 1024, // 150MB
16
+ maxEntries: 5000,
17
17
  defaultTTLMs: 5 * 60 * 1000, // 5 minutes
18
18
  evictionPolicy: 'lru'
19
19
  };
@@ -78,6 +78,13 @@ export class LocalCacheManager extends BaseSingleton {
78
78
  this._initializePromise = null;
79
79
  this._stats = { hits: 0, misses: 0 };
80
80
  this._config = { ...DEFAULT_CONFIG };
81
+ /**
82
+ * Per-fingerprint mutation lock. Serializes concurrent read-modify-write
83
+ * operations (RemoveSingleEntity, UpsertSingleEntity) on the same cache entry
84
+ * to prevent lost updates when multiple entity events fire simultaneously
85
+ * (e.g., TransactionGroup batch deletes).
86
+ */
87
+ this._fingerprintLocks = new Map();
81
88
  this.REGISTRY_KEY = '__MJ_CACHE_REGISTRY__';
82
89
  /**
83
90
  * Reverse index from entity name to the set of RunView cache fingerprints
@@ -769,14 +776,17 @@ export class LocalCacheManager extends BaseSingleton {
769
776
  * @param maxUpdatedAt - The latest __mj_UpdatedAt from the results
770
777
  * @param aggregateResults - Optional aggregate results to cache alongside the row data
771
778
  */
772
- async SetRunViewResult(fingerprint, params, results, maxUpdatedAt, aggregateResults) {
779
+ async SetRunViewResult(fingerprint, params, results, maxUpdatedAt, aggregateResults, totalRowCount) {
773
780
  if (!this._storageProvider || !this._config.enabled)
774
781
  return;
775
- // Persist results, maxUpdatedAt, and aggregateResults (rowCount is derived from results.length on read)
782
+ // Persist results, maxUpdatedAt, aggregateResults, and totalRowCount
776
783
  const data = { results, maxUpdatedAt };
777
784
  if (aggregateResults && aggregateResults.length > 0) {
778
785
  data.aggregateResults = aggregateResults;
779
786
  }
787
+ if (totalRowCount !== undefined) {
788
+ data.totalRowCount = totalRowCount;
789
+ }
780
790
  const value = JSON.stringify(data);
781
791
  const sizeBytes = this.estimateSize(value);
782
792
  // Check if we need to evict entries
@@ -829,11 +839,11 @@ export class LocalCacheManager extends BaseSingleton {
829
839
  this._stats.hits++;
830
840
  const parsed = JSON.parse(value);
831
841
  const results = parsed.results || [];
832
- // Always derive rowCount from results.length - never trust persisted rowCount
833
842
  const result = {
834
843
  results,
835
844
  maxUpdatedAt: parsed.maxUpdatedAt,
836
- rowCount: results.length
845
+ rowCount: results.length,
846
+ totalRowCount: parsed.totalRowCount
837
847
  };
838
848
  // Include aggregate results if they were cached
839
849
  if (parsed.aggregateResults) {
@@ -920,14 +930,18 @@ export class LocalCacheManager extends BaseSingleton {
920
930
  }
921
931
  // Convert map back to array
922
932
  const mergedResults = Array.from(resultMap.values());
933
+ // For differential updates, the merged result count IS the new total
934
+ // (differential applies to full-dataset caches, not paginated ones)
935
+ const mergedTotalRowCount = mergedResults.length;
923
936
  // Store the updated cache with optional aggregate results
924
937
  // Note: If aggregateResults not provided, cached aggregates are cleared (they'd be stale)
925
- await this.SetRunViewResult(fingerprint, params, mergedResults, newMaxUpdatedAt, aggregateResults);
938
+ await this.SetRunViewResult(fingerprint, params, mergedResults, newMaxUpdatedAt, aggregateResults, mergedTotalRowCount);
926
939
  // Return with rowCount derived from merged results and aggregates if provided
927
940
  const result = {
928
941
  results: mergedResults,
929
942
  maxUpdatedAt: newMaxUpdatedAt,
930
- rowCount: mergedResults.length
943
+ rowCount: mergedResults.length,
944
+ totalRowCount: mergedTotalRowCount
931
945
  };
932
946
  if (aggregateResults) {
933
947
  result.aggregateResults = aggregateResults;
@@ -944,6 +958,30 @@ export class LocalCacheManager extends BaseSingleton {
944
958
  * Used by BaseEngine for immediate cache sync when an entity is saved.
945
959
  * If the entity exists (by primary key), it is replaced; otherwise it is added.
946
960
  *
961
+ * Serializes async operations on the same cache fingerprint to prevent
962
+ * lost-update races. When multiple entity events fire simultaneously
963
+ * (e.g., 3 deletes from a TransactionGroup), each read-modify-write cycle
964
+ * must complete before the next one starts for the same fingerprint.
965
+ * Different fingerprints run concurrently with no contention.
966
+ */
967
+ async withFingerprintLock(fingerprint, fn) {
968
+ const existing = this._fingerprintLocks.get(fingerprint) ?? Promise.resolve();
969
+ let releaseLock;
970
+ const lockPromise = new Promise(resolve => { releaseLock = resolve; });
971
+ this._fingerprintLocks.set(fingerprint, lockPromise);
972
+ try {
973
+ await existing; // Wait for any previous operation on this fingerprint
974
+ return await fn();
975
+ }
976
+ finally {
977
+ releaseLock();
978
+ // Clean up if we're the last in the chain
979
+ if (this._fingerprintLocks.get(fingerprint) === lockPromise) {
980
+ this._fingerprintLocks.delete(fingerprint);
981
+ }
982
+ }
983
+ }
984
+ /**
947
985
  * @param fingerprint - The cache fingerprint to update
948
986
  * @param entityData - The entity data as a plain object (use entity.GetAll())
949
987
  * @param primaryKeyFieldName - Name of the primary key field
@@ -953,31 +991,33 @@ export class LocalCacheManager extends BaseSingleton {
953
991
  async UpsertSingleEntity(fingerprint, entityData, key, newMaxUpdatedAt) {
954
992
  if (!this._storageProvider || !this._config.enabled)
955
993
  return false;
956
- try {
957
- const cached = await this.GetRunViewResult(fingerprint);
958
- if (!cached) {
959
- LogStatusVerbose(`LocalCacheManager.UpsertSingleEntity: No cached data found for fingerprint "${fingerprint.substring(0, 60)}" — skipping (cache will be populated on next RunView)`);
960
- return false;
994
+ return this.withFingerprintLock(fingerprint, async () => {
995
+ try {
996
+ const cached = await this.GetRunViewResult(fingerprint);
997
+ if (!cached) {
998
+ LogStatusVerbose(`LocalCacheManager.UpsertSingleEntity: No cached data found for fingerprint "${fingerprint.substring(0, 60)}" — skipping (cache will be populated on next RunView)`);
999
+ return false;
1000
+ }
1001
+ LogStatusVerbose(`LocalCacheManager.UpsertSingleEntity: Found cached data with ${cached.results.length} rows, updating...`);
1002
+ const pkFieldNames = key.KeyValuePairs.map(kv => kv.FieldName);
1003
+ const keyStr = key.ToConcatenatedString();
1004
+ // Build a map of existing records by composite key string
1005
+ const resultMap = new Map();
1006
+ for (const row of cached.results) {
1007
+ const rowObj = row;
1008
+ const rowKey = this.buildCompositeKeyFromRow(rowObj, pkFieldNames);
1009
+ resultMap.set(rowKey.ToConcatenatedString(), row);
1010
+ }
1011
+ // Upsert the entity (add or replace)
1012
+ resultMap.set(keyStr, entityData);
1013
+ const updatedResults = Array.from(resultMap.values());
1014
+ return await this.storeCachedResults(fingerprint, updatedResults, newMaxUpdatedAt);
961
1015
  }
962
- LogStatusVerbose(`LocalCacheManager.UpsertSingleEntity: Found cached data with ${cached.results.length} rows, updating...`);
963
- const pkFieldNames = key.KeyValuePairs.map(kv => kv.FieldName);
964
- const keyStr = key.ToConcatenatedString();
965
- // Build a map of existing records by composite key string
966
- const resultMap = new Map();
967
- for (const row of cached.results) {
968
- const rowObj = row;
969
- const rowKey = this.buildCompositeKeyFromRow(rowObj, pkFieldNames);
970
- resultMap.set(rowKey.ToConcatenatedString(), row);
1016
+ catch (e) {
1017
+ LogError(`LocalCacheManager.UpsertSingleEntity failed: ${e}`);
1018
+ return false;
971
1019
  }
972
- // Upsert the entity (add or replace)
973
- resultMap.set(keyStr, entityData);
974
- const updatedResults = Array.from(resultMap.values());
975
- return await this.storeCachedResults(fingerprint, updatedResults, newMaxUpdatedAt);
976
- }
977
- catch (e) {
978
- LogError(`LocalCacheManager.UpsertSingleEntity failed: ${e}`);
979
- return false;
980
- }
1020
+ });
981
1021
  }
982
1022
  /**
983
1023
  * Removes a single entity from a cached RunView result.
@@ -991,31 +1031,33 @@ export class LocalCacheManager extends BaseSingleton {
991
1031
  async RemoveSingleEntity(fingerprint, key, newMaxUpdatedAt) {
992
1032
  if (!this._storageProvider || !this._config.enabled)
993
1033
  return false;
994
- try {
995
- const cached = await this.GetRunViewResult(fingerprint);
996
- if (!cached) {
997
- return false;
998
- }
999
- const pkFieldNames = key.KeyValuePairs.map(kv => kv.FieldName);
1000
- const keyStr = key.ToConcatenatedString();
1001
- // Build a map of existing records by composite key string
1002
- const resultMap = new Map();
1003
- for (const row of cached.results) {
1004
- const rowObj = row;
1005
- const rowKey = this.buildCompositeKeyFromRow(rowObj, pkFieldNames);
1006
- resultMap.set(rowKey.ToConcatenatedString(), row);
1034
+ return this.withFingerprintLock(fingerprint, async () => {
1035
+ try {
1036
+ const cached = await this.GetRunViewResult(fingerprint);
1037
+ if (!cached) {
1038
+ return false;
1039
+ }
1040
+ const pkFieldNames = key.KeyValuePairs.map(kv => kv.FieldName);
1041
+ const keyStr = key.ToConcatenatedString();
1042
+ // Build a map of existing records by composite key string
1043
+ const resultMap = new Map();
1044
+ for (const row of cached.results) {
1045
+ const rowObj = row;
1046
+ const rowKey = this.buildCompositeKeyFromRow(rowObj, pkFieldNames);
1047
+ resultMap.set(rowKey.ToConcatenatedString(), row);
1048
+ }
1049
+ if (!resultMap.has(keyStr)) {
1050
+ return true; // Not in cache, no-op
1051
+ }
1052
+ resultMap.delete(keyStr);
1053
+ const updatedResults = Array.from(resultMap.values());
1054
+ return await this.storeCachedResults(fingerprint, updatedResults, newMaxUpdatedAt);
1007
1055
  }
1008
- if (!resultMap.has(keyStr)) {
1009
- return true; // Not in cache, no-op
1056
+ catch (e) {
1057
+ LogError(`LocalCacheManager.RemoveSingleEntity failed: ${e}`);
1058
+ return false;
1010
1059
  }
1011
- resultMap.delete(keyStr);
1012
- const updatedResults = Array.from(resultMap.values());
1013
- return await this.storeCachedResults(fingerprint, updatedResults, newMaxUpdatedAt);
1014
- }
1015
- catch (e) {
1016
- LogError(`LocalCacheManager.RemoveSingleEntity failed: ${e}`);
1017
- return false;
1018
- }
1060
+ });
1019
1061
  }
1020
1062
  /**
1021
1063
  * Stores updated results array back to the cache and updates the registry.