@memberjunction/core-entities 5.29.0 → 5.30.1

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 (105) hide show
  1. package/dist/custom/MJConversationDetailEntityExtended.d.ts +31 -0
  2. package/dist/custom/MJConversationDetailEntityExtended.d.ts.map +1 -0
  3. package/dist/custom/MJConversationDetailEntityExtended.js +106 -0
  4. package/dist/custom/MJConversationDetailEntityExtended.js.map +1 -0
  5. package/dist/custom/PermissionProviders/AIAgentPermissionProvider.d.ts +31 -0
  6. package/dist/custom/PermissionProviders/AIAgentPermissionProvider.d.ts.map +1 -0
  7. package/dist/custom/PermissionProviders/AIAgentPermissionProvider.js +151 -0
  8. package/dist/custom/PermissionProviders/AIAgentPermissionProvider.js.map +1 -0
  9. package/dist/custom/PermissionProviders/AccessControlRuleProvider.d.ts +45 -0
  10. package/dist/custom/PermissionProviders/AccessControlRuleProvider.d.ts.map +1 -0
  11. package/dist/custom/PermissionProviders/AccessControlRuleProvider.js +253 -0
  12. package/dist/custom/PermissionProviders/AccessControlRuleProvider.js.map +1 -0
  13. package/dist/custom/PermissionProviders/ApplicationRolePermissionProvider.d.ts +28 -0
  14. package/dist/custom/PermissionProviders/ApplicationRolePermissionProvider.d.ts.map +1 -0
  15. package/dist/custom/PermissionProviders/ApplicationRolePermissionProvider.js +144 -0
  16. package/dist/custom/PermissionProviders/ApplicationRolePermissionProvider.js.map +1 -0
  17. package/dist/custom/PermissionProviders/ArtifactPermissionProvider.d.ts +45 -0
  18. package/dist/custom/PermissionProviders/ArtifactPermissionProvider.d.ts.map +1 -0
  19. package/dist/custom/PermissionProviders/ArtifactPermissionProvider.js +169 -0
  20. package/dist/custom/PermissionProviders/ArtifactPermissionProvider.js.map +1 -0
  21. package/dist/custom/PermissionProviders/CollectionPermissionProvider.d.ts +40 -0
  22. package/dist/custom/PermissionProviders/CollectionPermissionProvider.d.ts.map +1 -0
  23. package/dist/custom/PermissionProviders/CollectionPermissionProvider.js +220 -0
  24. package/dist/custom/PermissionProviders/CollectionPermissionProvider.js.map +1 -0
  25. package/dist/custom/PermissionProviders/DashboardPermissionProvider.d.ts +47 -0
  26. package/dist/custom/PermissionProviders/DashboardPermissionProvider.d.ts.map +1 -0
  27. package/dist/custom/PermissionProviders/DashboardPermissionProvider.js +218 -0
  28. package/dist/custom/PermissionProviders/DashboardPermissionProvider.js.map +1 -0
  29. package/dist/custom/PermissionProviders/EntityPermissionProvider.d.ts +25 -0
  30. package/dist/custom/PermissionProviders/EntityPermissionProvider.d.ts.map +1 -0
  31. package/dist/custom/PermissionProviders/EntityPermissionProvider.js +129 -0
  32. package/dist/custom/PermissionProviders/EntityPermissionProvider.js.map +1 -0
  33. package/dist/custom/PermissionProviders/QueryPermissionProvider.d.ts +24 -0
  34. package/dist/custom/PermissionProviders/QueryPermissionProvider.d.ts.map +1 -0
  35. package/dist/custom/PermissionProviders/QueryPermissionProvider.js +123 -0
  36. package/dist/custom/PermissionProviders/QueryPermissionProvider.js.map +1 -0
  37. package/dist/custom/PermissionProviders/ResourcePermissionProvider.d.ts +39 -0
  38. package/dist/custom/PermissionProviders/ResourcePermissionProvider.d.ts.map +1 -0
  39. package/dist/custom/PermissionProviders/ResourcePermissionProvider.js +193 -0
  40. package/dist/custom/PermissionProviders/ResourcePermissionProvider.js.map +1 -0
  41. package/dist/custom/PermissionProviders/index.d.ts +16 -0
  42. package/dist/custom/PermissionProviders/index.d.ts.map +1 -0
  43. package/dist/custom/PermissionProviders/index.js +41 -0
  44. package/dist/custom/PermissionProviders/index.js.map +1 -0
  45. package/dist/custom/Permissions/BaseShareEntityExtended.d.ts +105 -0
  46. package/dist/custom/Permissions/BaseShareEntityExtended.d.ts.map +1 -0
  47. package/dist/custom/Permissions/BaseShareEntityExtended.js +162 -0
  48. package/dist/custom/Permissions/BaseShareEntityExtended.js.map +1 -0
  49. package/dist/custom/Permissions/MJAccessControlRuleEntityExtended.d.ts +22 -0
  50. package/dist/custom/Permissions/MJAccessControlRuleEntityExtended.d.ts.map +1 -0
  51. package/dist/custom/Permissions/MJAccessControlRuleEntityExtended.js +75 -0
  52. package/dist/custom/Permissions/MJAccessControlRuleEntityExtended.js.map +1 -0
  53. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.d.ts +22 -0
  54. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.d.ts.map +1 -0
  55. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.js +114 -0
  56. package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.js.map +1 -0
  57. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.d.ts +25 -0
  58. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.d.ts.map +1 -0
  59. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.js +101 -0
  60. package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.js.map +1 -0
  61. package/dist/custom/Permissions/MJDashboardPermissionEntityExtended.d.ts +32 -0
  62. package/dist/custom/Permissions/MJDashboardPermissionEntityExtended.d.ts.map +1 -0
  63. package/dist/custom/Permissions/MJDashboardPermissionEntityExtended.js +95 -0
  64. package/dist/custom/Permissions/MJDashboardPermissionEntityExtended.js.map +1 -0
  65. package/dist/custom/Permissions/index.d.ts +13 -0
  66. package/dist/custom/Permissions/index.d.ts.map +1 -0
  67. package/dist/custom/Permissions/index.js +22 -0
  68. package/dist/custom/Permissions/index.js.map +1 -0
  69. package/dist/custom/Permissions/shareNotification.d.ts +72 -0
  70. package/dist/custom/Permissions/shareNotification.d.ts.map +1 -0
  71. package/dist/custom/Permissions/shareNotification.js +98 -0
  72. package/dist/custom/Permissions/shareNotification.js.map +1 -0
  73. package/dist/custom/ResourcePermissions/MJResourcePermissionEntityExtended.d.ts +63 -1
  74. package/dist/custom/ResourcePermissions/MJResourcePermissionEntityExtended.d.ts.map +1 -1
  75. package/dist/custom/ResourcePermissions/MJResourcePermissionEntityExtended.js +244 -27
  76. package/dist/custom/ResourcePermissions/MJResourcePermissionEntityExtended.js.map +1 -1
  77. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.d.ts +7 -0
  78. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.d.ts.map +1 -1
  79. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.js +13 -0
  80. package/dist/custom/ResourcePermissions/ResourcePermissionEngine.js.map +1 -1
  81. package/dist/engines/GeoDataEngine.d.ts +42 -8
  82. package/dist/engines/GeoDataEngine.d.ts.map +1 -1
  83. package/dist/engines/GeoDataEngine.js +191 -36
  84. package/dist/engines/GeoDataEngine.js.map +1 -1
  85. package/dist/engines/PermissionEngine.d.ts +142 -0
  86. package/dist/engines/PermissionEngine.d.ts.map +1 -0
  87. package/dist/engines/PermissionEngine.js +343 -0
  88. package/dist/engines/PermissionEngine.js.map +1 -0
  89. package/dist/engines/UserInfoEngine.d.ts +6 -1
  90. package/dist/engines/UserInfoEngine.d.ts.map +1 -1
  91. package/dist/engines/UserInfoEngine.js +21 -5
  92. package/dist/engines/UserInfoEngine.js.map +1 -1
  93. package/dist/engines/conversations.d.ts +35 -0
  94. package/dist/engines/conversations.d.ts.map +1 -1
  95. package/dist/engines/conversations.js +103 -16
  96. package/dist/engines/conversations.js.map +1 -1
  97. package/dist/generated/entity_subclasses.d.ts +579 -52
  98. package/dist/generated/entity_subclasses.d.ts.map +1 -1
  99. package/dist/generated/entity_subclasses.js +697 -66
  100. package/dist/generated/entity_subclasses.js.map +1 -1
  101. package/dist/index.d.ts +4 -0
  102. package/dist/index.d.ts.map +1 -1
  103. package/dist/index.js +8 -0
  104. package/dist/index.js.map +1 -1
  105. package/package.json +5 -5
@@ -1,6 +1,21 @@
1
1
  import { BaseEngine, BaseEntityEvent, IMetadataProvider, UserInfo } from "@memberjunction/core";
2
2
  import { Observable } from "rxjs";
3
3
  import { MJConversationEntity, MJConversationDetailEntity, MJConversationDetailEntityType, MJAIAgentRunEntity, MJAIAgentRunEntityType, MJConversationDetailRatingEntityType, MJConversationDetailArtifactEntityType } from "../generated/entity_subclasses.js";
4
+ /**
5
+ * Display info about the user who shared a conversation with the current user,
6
+ * plus the `PermissionLevel` the grantee was granted. Exposed via
7
+ * {@link ConversationEngine.GetSharedByInfo} for UI surfaces that render
8
+ * "Shared by {email}" badges and gate actions (e.g., View-only recipients
9
+ * can't send messages).
10
+ */
11
+ export interface SharedByInfo {
12
+ /** Grantor user ID. Null when the share predates the `SharedByUserID` column. */
13
+ UserID: string | null;
14
+ Name: string | null;
15
+ Email: string | null;
16
+ /** Level the current user was granted on this conversation. */
17
+ Level: 'View' | 'Edit' | 'Owner';
18
+ }
4
19
  /**
5
20
  * Agent Run data returned as JSON from GetConversationComplete query.
6
21
  */
@@ -131,6 +146,19 @@ export declare class ConversationEngine extends BaseEngine<ConversationEngine> {
131
146
  private _detailCache;
132
147
  /** Track the environment ID used for the last load */
133
148
  private _lastEnvironmentId;
149
+ /**
150
+ * For conversations the current user *received* via sharing, this map goes
151
+ * from `conversationId` to the grantor's display info. Populated by
152
+ * {@link LoadConversations} using the `SharedByUserID` column on the
153
+ * `MJ: Resource Permissions` row. Used by the chat UI to render
154
+ * "Shared by {email}" next to the title and a share icon in the sidebar.
155
+ */
156
+ private _sharedByByConversationId;
157
+ /**
158
+ * Look up grantor info for a conversation the current user was shared into.
159
+ * Returns `null` for conversations the user owns (not shared with them).
160
+ */
161
+ GetSharedByInfo(conversationId: string): SharedByInfo | null;
134
162
  /**
135
163
  * Guard flag: set true while the engine itself is performing a mutation.
136
164
  * Prevents the entity event handler from re-processing our own saves/deletes,
@@ -155,6 +183,13 @@ export declare class ConversationEngine extends BaseEngine<ConversationEngine> {
155
183
  * @param forceRefresh - If true, reloads even if data is already cached
156
184
  */
157
185
  LoadConversations(environmentId: string, contextUser: UserInfo, forceRefresh?: boolean): Promise<void>;
186
+ /**
187
+ * Populates {@link _sharedByByConversationId}. Resolves grantor emails via
188
+ * one `MJ: Users` query keyed on the unique set of `SharedByUserID`s.
189
+ * Rows without a `SharedByUserID` (legacy shares predating the column)
190
+ * are skipped — the UI degrades to no badge for those.
191
+ */
192
+ private rebuildSharedByMap;
158
193
  /**
159
194
  * Creates a new conversation, saves it to the database, and adds it to the cached list.
160
195
  *
@@ -1 +1 @@
1
- {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../src/engines/conversations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversations.d.ts","sourceRoot":"","sources":["../../src/engines/conversations.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,13 @@ import { BaseEngine, Metadata, RunQuery, RunView, TransformSimpleObjectToEntityO
2
2
  import { NormalizeUUID, UUIDsEqual } from "@memberjunction/global";
3
3
  import { BehaviorSubject } from "rxjs";
4
4
  import { ArtifactMetadataEngine } from "./artifacts.js";
5
+ import { ResourcePermissionEngine } from "../custom/ResourcePermissions/ResourcePermissionEngine.js";
6
+ /**
7
+ * `MJ: Resource Types.ID` for Conversations. Conversations that the current
8
+ * user doesn't own but has been granted access to (via `MJ: Resource Permissions`)
9
+ * are folded into the list by `LoadConversations` using this ID.
10
+ */
11
+ const CONVERSATIONS_RESOURCE_TYPE_ID = '81D4BC3D-9FEB-EF11-B01A-286B35C04427';
5
12
  /**
6
13
  * Helper: parse a raw ConversationDetailComplete row into typed arrays.
7
14
  */
@@ -62,6 +69,14 @@ export class ConversationEngine extends BaseEngine {
62
69
  this._detailCache = new Map();
63
70
  /** Track the environment ID used for the last load */
64
71
  this._lastEnvironmentId = null;
72
+ /**
73
+ * For conversations the current user *received* via sharing, this map goes
74
+ * from `conversationId` to the grantor's display info. Populated by
75
+ * {@link LoadConversations} using the `SharedByUserID` column on the
76
+ * `MJ: Resource Permissions` row. Used by the chat UI to render
77
+ * "Shared by {email}" next to the title and a share icon in the sidebar.
78
+ */
79
+ this._sharedByByConversationId = new Map();
65
80
  /**
66
81
  * Guard flag: set true while the engine itself is performing a mutation.
67
82
  * Prevents the entity event handler from re-processing our own saves/deletes,
@@ -90,6 +105,13 @@ export class ConversationEngine extends BaseEngine {
90
105
  get Conversations() {
91
106
  return this._conversations$.value;
92
107
  }
108
+ /**
109
+ * Look up grantor info for a conversation the current user was shared into.
110
+ * Returns `null` for conversations the user owns (not shared with them).
111
+ */
112
+ GetSharedByInfo(conversationId) {
113
+ return this._sharedByByConversationId.get(NormalizeUUID(conversationId)) ?? null;
114
+ }
93
115
  // ========================================================================
94
116
  // ENGINE CONFIG (BaseEngine pattern)
95
117
  // ========================================================================
@@ -130,8 +152,24 @@ export class ConversationEngine extends BaseEngine {
130
152
  return;
131
153
  }
132
154
  this._lastEnvironmentId = environmentId;
155
+ // Include conversations the user has been granted access to via
156
+ // `MJ: Resource Permissions`. ResourcePermissionEngine caches the full
157
+ // permission table; GetUserAvailableResources filters it to approved
158
+ // grants (direct + role-inherited) for this user + resource type.
159
+ await ResourcePermissionEngine.Instance.Config(false, contextUser);
160
+ const sharedPermissions = ResourcePermissionEngine.Instance
161
+ .GetUserAvailableResources(contextUser, CONVERSATIONS_RESOURCE_TYPE_ID);
162
+ const sharedConversationIds = sharedPermissions.map((p) => p.ResourceRecordID);
163
+ // Build the "shared by" map for the sidebar/header UI. Requires one
164
+ // extra query to fetch grantor emails (the ResourcePermission view
165
+ // only denormalizes Name, not Email).
133
166
  const rv = new RunView();
134
- const filter = `EnvironmentID='${environmentId}' AND UserID='${contextUser.ID}' AND (IsArchived IS NULL OR IsArchived=0)`;
167
+ await this.rebuildSharedByMap(rv, sharedPermissions, contextUser);
168
+ const ownershipClause = `UserID='${contextUser.ID}'`;
169
+ const sharedClause = sharedConversationIds.length > 0
170
+ ? ` OR ID IN (${sharedConversationIds.map((id) => `'${id}'`).join(',')})`
171
+ : '';
172
+ const filter = `EnvironmentID='${environmentId}' AND (${ownershipClause}${sharedClause}) AND (IsArchived IS NULL OR IsArchived=0)`;
135
173
  const result = await rv.RunView({
136
174
  EntityName: 'MJ: Conversations',
137
175
  ExtraFilter: filter,
@@ -147,6 +185,45 @@ export class ConversationEngine extends BaseEngine {
147
185
  this._conversations$.next([]);
148
186
  }
149
187
  }
188
+ /**
189
+ * Populates {@link _sharedByByConversationId}. Resolves grantor emails via
190
+ * one `MJ: Users` query keyed on the unique set of `SharedByUserID`s.
191
+ * Rows without a `SharedByUserID` (legacy shares predating the column)
192
+ * are skipped — the UI degrades to no badge for those.
193
+ */
194
+ async rebuildSharedByMap(rv, sharedPermissions, contextUser) {
195
+ this._sharedByByConversationId.clear();
196
+ if (sharedPermissions.length === 0)
197
+ return;
198
+ const grantorIds = Array.from(new Set(sharedPermissions
199
+ .map((p) => p.SharedByUserID)
200
+ .filter((id) => !!id)));
201
+ const emailByUserId = new Map();
202
+ if (grantorIds.length > 0) {
203
+ const inClause = grantorIds.map((id) => `'${id}'`).join(',');
204
+ const result = await rv.RunView({
205
+ EntityName: 'MJ: Users',
206
+ ExtraFilter: `ID IN (${inClause})`,
207
+ Fields: ['ID', 'Email'],
208
+ ResultType: 'simple'
209
+ }, contextUser);
210
+ if (result.Success) {
211
+ for (const u of result.Results ?? []) {
212
+ emailByUserId.set(NormalizeUUID(u.ID), u.Email ?? null);
213
+ }
214
+ }
215
+ }
216
+ for (const perm of sharedPermissions) {
217
+ this._sharedByByConversationId.set(NormalizeUUID(perm.ResourceRecordID), {
218
+ UserID: perm.SharedByUserID ?? null,
219
+ Name: perm.SharedByUser ?? null,
220
+ Email: perm.SharedByUserID
221
+ ? emailByUserId.get(NormalizeUUID(perm.SharedByUserID)) ?? null
222
+ : null,
223
+ Level: perm.PermissionLevel ?? 'View'
224
+ });
225
+ }
226
+ }
150
227
  /**
151
228
  * Creates a new conversation, saves it to the database, and adds it to the cached list.
152
229
  *
@@ -562,27 +639,37 @@ export class ConversationEngine extends BaseEngine {
562
639
  existing.Details.push(newDetail);
563
640
  }
564
641
  const parsed = parseConversationDetailComplete(row);
565
- // Merge agent runs: update in-place or add
642
+ // Merge agent runs: update in-place or add.
643
+ //
644
+ // Important: `existingRun` may be a plain JSON object rather than a BaseEntity.
645
+ // Progress-update events from the agent runner stream deserialized JSON via
646
+ // `SetAgentRunForDetail()`; those objects have no prototype methods. Duck-type
647
+ // check for `LoadFromData` before calling it, and hydrate a real entity when
648
+ // we only have plain data. Mirrors the pattern in
649
+ // `conversation-chat-area.component.ts#onMessageComplete` (line ~909).
566
650
  if (parsed.agentRuns.length > 0) {
567
651
  const agentRunData = parsed.agentRuns[0];
652
+ const mergeFields = {
653
+ ID: agentRunData.ID,
654
+ AgentID: agentRunData.AgentID,
655
+ Agent: agentRunData.Agent,
656
+ Status: agentRunData.Status,
657
+ __mj_CreatedAt: agentRunData.__mj_CreatedAt,
658
+ __mj_UpdatedAt: agentRunData.__mj_UpdatedAt,
659
+ TotalPromptTokensUsed: agentRunData.TotalPromptTokensUsed,
660
+ TotalCompletionTokensUsed: agentRunData.TotalCompletionTokensUsed,
661
+ TotalCost: agentRunData.TotalCost,
662
+ ConversationDetailID: agentRunData.ConversationDetailID
663
+ };
568
664
  const existingRun = existing.AgentRunsByDetailId.get(row.ID);
569
- if (existingRun) {
570
- existingRun.LoadFromData({
571
- ID: agentRunData.ID,
572
- AgentID: agentRunData.AgentID,
573
- Agent: agentRunData.Agent,
574
- Status: agentRunData.Status,
575
- __mj_CreatedAt: agentRunData.__mj_CreatedAt,
576
- __mj_UpdatedAt: agentRunData.__mj_UpdatedAt,
577
- TotalPromptTokensUsed: agentRunData.TotalPromptTokensUsed,
578
- TotalCompletionTokensUsed: agentRunData.TotalCompletionTokensUsed,
579
- TotalCost: agentRunData.TotalCost,
580
- ConversationDetailID: agentRunData.ConversationDetailID
581
- });
665
+ const existingRunIsEntity = !!existingRun && typeof existingRun.LoadFromData === 'function';
666
+ if (existingRunIsEntity) {
667
+ existingRun.LoadFromData(mergeFields);
582
668
  }
583
669
  else {
670
+ // Either no existing run, or existing value is plain JSON — hydrate fresh.
584
671
  const newRun = await md.GetEntityObject('MJ: AI Agent Runs', contextUser);
585
- newRun.LoadFromData(agentRunData);
672
+ newRun.LoadFromData(existingRun ? { ...existingRun, ...mergeFields } : agentRunData);
586
673
  existing.AgentRunsByDetailId.set(row.ID, newRun);
587
674
  }
588
675
  }
@@ -1 +1 @@
1
- {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../src/engines/conversations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conversations.js","sourceRoot":"","sources":["../../src/engines/conversations.ts"],"names":[],"mappings":"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"}