@memberjunction/core-entities-server 6.2.0-edge.6 → 6.2.0-edge.8

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 (179) hide show
  1. package/README.md +155 -100
  2. package/dist/custom/AnchoredConversationReadSecurityHook.d.ts +22 -0
  3. package/dist/custom/AnchoredConversationReadSecurityHook.d.ts.map +1 -0
  4. package/dist/custom/AnchoredConversationReadSecurityHook.js +293 -0
  5. package/dist/custom/AnchoredConversationReadSecurityHook.js.map +1 -0
  6. package/dist/custom/MJAIAgentExampleEntityServer.server.d.ts +2 -0
  7. package/dist/custom/MJAIAgentExampleEntityServer.server.d.ts.map +1 -1
  8. package/dist/custom/MJAIAgentExampleEntityServer.server.js +8 -5
  9. package/dist/custom/MJAIAgentExampleEntityServer.server.js.map +1 -1
  10. package/dist/custom/MJAIAgentNoteEntityServer.server.d.ts +2 -0
  11. package/dist/custom/MJAIAgentNoteEntityServer.server.d.ts.map +1 -1
  12. package/dist/custom/MJAIAgentNoteEntityServer.server.js +8 -5
  13. package/dist/custom/MJAIAgentNoteEntityServer.server.js.map +1 -1
  14. package/dist/custom/MJAIAgentRelationshipEntityServer.server.d.ts +17 -0
  15. package/dist/custom/MJAIAgentRelationshipEntityServer.server.d.ts.map +1 -0
  16. package/dist/custom/MJAIAgentRelationshipEntityServer.server.js +71 -0
  17. package/dist/custom/MJAIAgentRelationshipEntityServer.server.js.map +1 -0
  18. package/dist/custom/MJAIAgentSessionEntityServer.server.d.ts +8 -22
  19. package/dist/custom/MJAIAgentSessionEntityServer.server.d.ts.map +1 -1
  20. package/dist/custom/MJAIAgentSessionEntityServer.server.js +24 -1
  21. package/dist/custom/MJAIAgentSessionEntityServer.server.js.map +1 -1
  22. package/dist/custom/MJAIAgentUserPolicyEntityServer.server.d.ts +23 -0
  23. package/dist/custom/MJAIAgentUserPolicyEntityServer.server.d.ts.map +1 -0
  24. package/dist/custom/MJAIAgentUserPolicyEntityServer.server.js +53 -0
  25. package/dist/custom/MJAIAgentUserPolicyEntityServer.server.js.map +1 -0
  26. package/dist/custom/MJAIPromptEntityServer.server.d.ts.map +1 -1
  27. package/dist/custom/MJAIPromptEntityServer.server.js +2 -1
  28. package/dist/custom/MJAIPromptEntityServer.server.js.map +1 -1
  29. package/dist/custom/MJBrandKitEntityServer.server.d.ts +14 -0
  30. package/dist/custom/MJBrandKitEntityServer.server.d.ts.map +1 -0
  31. package/dist/custom/MJBrandKitEntityServer.server.js +75 -0
  32. package/dist/custom/MJBrandKitEntityServer.server.js.map +1 -0
  33. package/dist/custom/MJCompanyIntegrationEntityServer.server.d.ts.map +1 -1
  34. package/dist/custom/MJCompanyIntegrationEntityServer.server.js +1 -0
  35. package/dist/custom/MJCompanyIntegrationEntityServer.server.js.map +1 -1
  36. package/dist/custom/MJComponentEntityServer.server.d.ts +2 -0
  37. package/dist/custom/MJComponentEntityServer.server.d.ts.map +1 -1
  38. package/dist/custom/MJComponentEntityServer.server.js +5 -1
  39. package/dist/custom/MJComponentEntityServer.server.js.map +1 -1
  40. package/dist/custom/MJConversationDetailEntityServer.server.d.ts +20 -30
  41. package/dist/custom/MJConversationDetailEntityServer.server.d.ts.map +1 -1
  42. package/dist/custom/MJConversationDetailEntityServer.server.js +89 -35
  43. package/dist/custom/MJConversationDetailEntityServer.server.js.map +1 -1
  44. package/dist/custom/MJConversationEntityServer.server.d.ts +19 -4
  45. package/dist/custom/MJConversationEntityServer.server.d.ts.map +1 -1
  46. package/dist/custom/MJConversationEntityServer.server.js +169 -11
  47. package/dist/custom/MJConversationEntityServer.server.js.map +1 -1
  48. package/dist/custom/MJEntityDocumentEntityServer.server.d.ts.map +1 -1
  49. package/dist/custom/MJEntityDocumentEntityServer.server.js +1 -0
  50. package/dist/custom/MJEntityDocumentEntityServer.server.js.map +1 -1
  51. package/dist/custom/MJListDetailEntityServer.server.d.ts.map +1 -1
  52. package/dist/custom/MJListDetailEntityServer.server.js +1 -0
  53. package/dist/custom/MJListDetailEntityServer.server.js.map +1 -1
  54. package/dist/custom/MJProjectEntityServer.server.d.ts +21 -0
  55. package/dist/custom/MJProjectEntityServer.server.d.ts.map +1 -0
  56. package/dist/custom/MJProjectEntityServer.server.js +106 -0
  57. package/dist/custom/MJProjectEntityServer.server.js.map +1 -0
  58. package/dist/custom/MJQueryEntityServer.server.d.ts +177 -47
  59. package/dist/custom/MJQueryEntityServer.server.d.ts.map +1 -1
  60. package/dist/custom/MJQueryEntityServer.server.js +479 -164
  61. package/dist/custom/MJQueryEntityServer.server.js.map +1 -1
  62. package/dist/custom/MJQuerySQLEntityServer.server.d.ts +15 -18
  63. package/dist/custom/MJQuerySQLEntityServer.server.d.ts.map +1 -1
  64. package/dist/custom/MJQuerySQLEntityServer.server.js +34 -42
  65. package/dist/custom/MJQuerySQLEntityServer.server.js.map +1 -1
  66. package/dist/custom/MJTagEntityServer.server.d.ts +2 -0
  67. package/dist/custom/MJTagEntityServer.server.d.ts.map +1 -1
  68. package/dist/custom/MJTagEntityServer.server.js +13 -7
  69. package/dist/custom/MJTagEntityServer.server.js.map +1 -1
  70. package/dist/custom/MJUserRoutineEntityServer.server.d.ts.map +1 -1
  71. package/dist/custom/MJUserRoutineEntityServer.server.js +8 -1
  72. package/dist/custom/MJUserRoutineEntityServer.server.js.map +1 -1
  73. package/dist/custom/RestrictedFieldCommentClassifier.d.ts +73 -0
  74. package/dist/custom/RestrictedFieldCommentClassifier.d.ts.map +1 -0
  75. package/dist/custom/RestrictedFieldCommentClassifier.js +240 -0
  76. package/dist/custom/RestrictedFieldCommentClassifier.js.map +1 -0
  77. package/dist/custom/query-extraction/childRowWriter.d.ts +77 -0
  78. package/dist/custom/query-extraction/childRowWriter.d.ts.map +1 -0
  79. package/dist/custom/query-extraction/childRowWriter.js +277 -0
  80. package/dist/custom/query-extraction/childRowWriter.js.map +1 -0
  81. package/dist/custom/query-extraction/compositionTargets.d.ts +40 -0
  82. package/dist/custom/query-extraction/compositionTargets.d.ts.map +1 -0
  83. package/dist/custom/query-extraction/compositionTargets.js +99 -0
  84. package/dist/custom/query-extraction/compositionTargets.js.map +1 -0
  85. package/dist/custom/query-extraction/declared.d.ts +79 -0
  86. package/dist/custom/query-extraction/declared.d.ts.map +1 -0
  87. package/dist/custom/query-extraction/declared.js +91 -0
  88. package/dist/custom/query-extraction/declared.js.map +1 -0
  89. package/dist/custom/query-extraction/describeFacts.d.ts +40 -0
  90. package/dist/custom/query-extraction/describeFacts.d.ts.map +1 -0
  91. package/dist/custom/query-extraction/describeFacts.js +225 -0
  92. package/dist/custom/query-extraction/describeFacts.js.map +1 -0
  93. package/dist/custom/query-extraction/descriptionPass.d.ts +23 -0
  94. package/dist/custom/query-extraction/descriptionPass.d.ts.map +1 -0
  95. package/dist/custom/query-extraction/descriptionPass.js +95 -0
  96. package/dist/custom/query-extraction/descriptionPass.js.map +1 -0
  97. package/dist/custom/query-extraction/extractQuery.d.ts +25 -0
  98. package/dist/custom/query-extraction/extractQuery.d.ts.map +1 -0
  99. package/dist/custom/query-extraction/extractQuery.js +146 -0
  100. package/dist/custom/query-extraction/extractQuery.js.map +1 -0
  101. package/dist/custom/query-extraction/extractionTypes.d.ts +133 -0
  102. package/dist/custom/query-extraction/extractionTypes.d.ts.map +1 -0
  103. package/dist/custom/query-extraction/extractionTypes.js +2 -0
  104. package/dist/custom/query-extraction/extractionTypes.js.map +1 -0
  105. package/dist/custom/query-extraction/index.d.ts +16 -0
  106. package/dist/custom/query-extraction/index.d.ts.map +1 -1
  107. package/dist/custom/query-extraction/index.js +11 -1
  108. package/dist/custom/query-extraction/index.js.map +1 -1
  109. package/dist/custom/query-extraction/pipeline.d.ts +6 -2
  110. package/dist/custom/query-extraction/pipeline.d.ts.map +1 -1
  111. package/dist/custom/query-extraction/pipeline.js +21 -14
  112. package/dist/custom/query-extraction/pipeline.js.map +1 -1
  113. package/dist/custom/query-extraction/resolve.d.ts +7 -2
  114. package/dist/custom/query-extraction/resolve.d.ts.map +1 -1
  115. package/dist/custom/query-extraction/resolve.js +17 -14
  116. package/dist/custom/query-extraction/resolve.js.map +1 -1
  117. package/dist/custom/query-extraction/sourceBinding.d.ts +57 -0
  118. package/dist/custom/query-extraction/sourceBinding.d.ts.map +1 -0
  119. package/dist/custom/query-extraction/sourceBinding.js +104 -0
  120. package/dist/custom/query-extraction/sourceBinding.js.map +1 -0
  121. package/dist/custom/query-extraction/sync.d.ts +27 -3
  122. package/dist/custom/query-extraction/sync.d.ts.map +1 -1
  123. package/dist/custom/query-extraction/sync.js +69 -44
  124. package/dist/custom/query-extraction/sync.js.map +1 -1
  125. package/dist/custom/query-extraction/templateFacts.d.ts +62 -0
  126. package/dist/custom/query-extraction/templateFacts.d.ts.map +1 -0
  127. package/dist/custom/query-extraction/templateFacts.js +229 -0
  128. package/dist/custom/query-extraction/templateFacts.js.map +1 -0
  129. package/dist/custom/query-extraction/types.d.ts +4 -0
  130. package/dist/custom/query-extraction/types.d.ts.map +1 -1
  131. package/dist/custom/query-refresh/QueryExtractionService.d.ts +54 -0
  132. package/dist/custom/query-refresh/QueryExtractionService.d.ts.map +1 -0
  133. package/dist/custom/query-refresh/QueryExtractionService.js +207 -0
  134. package/dist/custom/query-refresh/QueryExtractionService.js.map +1 -0
  135. package/dist/custom/query-refresh/QueryRefreshExtractionServerOperation.d.ts +28 -0
  136. package/dist/custom/query-refresh/QueryRefreshExtractionServerOperation.d.ts.map +1 -0
  137. package/dist/custom/query-refresh/QueryRefreshExtractionServerOperation.js +106 -0
  138. package/dist/custom/query-refresh/QueryRefreshExtractionServerOperation.js.map +1 -0
  139. package/dist/custom/query-refresh/index.d.ts +14 -0
  140. package/dist/custom/query-refresh/index.d.ts.map +1 -0
  141. package/dist/custom/query-refresh/index.js +10 -0
  142. package/dist/custom/query-refresh/index.js.map +1 -0
  143. package/dist/custom/query-refresh/queryRebind.d.ts +33 -0
  144. package/dist/custom/query-refresh/queryRebind.d.ts.map +1 -0
  145. package/dist/custom/query-refresh/queryRebind.js +85 -0
  146. package/dist/custom/query-refresh/queryRebind.js.map +1 -0
  147. package/dist/custom/query-refresh/refreshAuthorization.d.ts +29 -0
  148. package/dist/custom/query-refresh/refreshAuthorization.d.ts.map +1 -0
  149. package/dist/custom/query-refresh/refreshAuthorization.js +66 -0
  150. package/dist/custom/query-refresh/refreshAuthorization.js.map +1 -0
  151. package/dist/custom/query-refresh/refreshFormat.d.ts +16 -0
  152. package/dist/custom/query-refresh/refreshFormat.d.ts.map +1 -0
  153. package/dist/custom/query-refresh/refreshFormat.js +67 -0
  154. package/dist/custom/query-refresh/refreshFormat.js.map +1 -0
  155. package/dist/custom/query-refresh/refreshOrder.d.ts +25 -0
  156. package/dist/custom/query-refresh/refreshOrder.d.ts.map +1 -0
  157. package/dist/custom/query-refresh/refreshOrder.js +95 -0
  158. package/dist/custom/query-refresh/refreshOrder.js.map +1 -0
  159. package/dist/custom/query-refresh/refreshSelection.d.ts +15 -0
  160. package/dist/custom/query-refresh/refreshSelection.d.ts.map +1 -0
  161. package/dist/custom/query-refresh/refreshSelection.js +99 -0
  162. package/dist/custom/query-refresh/refreshSelection.js.map +1 -0
  163. package/dist/custom/query-refresh/refreshTypes.d.ts +81 -0
  164. package/dist/custom/query-refresh/refreshTypes.d.ts.map +1 -0
  165. package/dist/custom/query-refresh/refreshTypes.js +5 -0
  166. package/dist/custom/query-refresh/refreshTypes.js.map +1 -0
  167. package/dist/custom/util.d.ts +8 -0
  168. package/dist/custom/util.d.ts.map +1 -1
  169. package/dist/custom/util.js +18 -1
  170. package/dist/custom/util.js.map +1 -1
  171. package/dist/engines/QueryEngineServer.d.ts +8 -5
  172. package/dist/engines/QueryEngineServer.d.ts.map +1 -1
  173. package/dist/engines/QueryEngineServer.js +16 -23
  174. package/dist/engines/QueryEngineServer.js.map +1 -1
  175. package/dist/index.d.ts +7 -0
  176. package/dist/index.d.ts.map +1 -1
  177. package/dist/index.js +7 -0
  178. package/dist/index.js.map +1 -1
  179. package/package.json +30 -30
@@ -1 +1 @@
1
- {"version":3,"file":"MJConversationDetailEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJConversationDetailEntityServer.server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MJConversationDetailEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJConversationDetailEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,28 @@
1
- import { ValidationResult } from '@memberjunction/core';
1
+ import { EntitySaveOptions, ValidationResult } from '@memberjunction/core';
2
2
  import { MJConversationEntity } from '@memberjunction/core-entities';
3
3
  /**
4
4
  * Server-side `MJ: Conversations` entity.
5
5
  *
6
- * Keeps `ExternalID` — the scope identity an anonymous visitor's realtime session is owned through — out
7
- * of an anonymous visitor's reach once the conversation exists. See {@link CheckAnonymousOwnershipKeyChange}.
8
- * Uses the synchronous `Validate()` so the rule runs on every save, like `MJAIAgentSessionEntityServer`.
6
+ * 1. Keeps `ExternalID` — the scope identity an anonymous visitor's realtime session is owned through — out
7
+ * of an anonymous visitor's reach once the conversation exists. See {@link CheckAnonymousOwnershipKeyChange}.
8
+ * 2. Keeps who a conversation belongs to and who it is shared with in its owner's hands: see
9
+ * {@link checkOwnerOnlyChange}. Uses the synchronous `Validate()` so the rules run on every save, like
10
+ * `MJAIAgentSessionEntityServer`.
11
+ * 3. Saves `AdditionalData` as compact JSON when it holds an object, so the stored text always uses the spelling
12
+ * the conversation list's SQL filter matches (`INHERIT_FOLDER_ACCESS_SQL_CLAUSE`), and refuses a value the filter
13
+ * and the parser would still read differently: see {@link checkInheritanceReadingsAgree}.
14
+ * 4. Enforces Row-Level Security (RLS) and Field-Level Security (FLS) on anchored conversations
15
+ * (`LinkedEntityID` + `LinkedRecordID` / `AnchorType`):
16
+ * - Verifies the saving user can read the linked record (`UserCanReadLinkedRecord`).
17
+ * - Verifies the saving user is not denied Read access on the anchored field or `restrictedFields`
18
+ * (`IsConversationHiddenByFieldSecurity`).
19
+ * - When `AnchorType === 'Field'` targets an FLS-governed field (`HasFieldPermissions === true`),
20
+ * automatically stamps that canonical field name into `AnchorMetadataObject.restrictedFields`.
9
21
  */
10
22
  export declare class MJConversationEntityServer extends MJConversationEntity {
11
23
  Validate(): ValidationResult;
24
+ Save(options?: EntitySaveOptions): Promise<boolean>;
25
+ private checkAnchoredConversationAccessAndStampMetadata;
26
+ private recordSaveDenied;
12
27
  }
13
28
  //# sourceMappingURL=MJConversationEntityServer.server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"MJConversationEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJConversationEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAGrE;;;;;;GAMG;AACH,qBACa,0BAA2B,SAAQ,oBAAoB;IAChD,QAAQ,IAAI,gBAAgB;CAS/C"}
1
+ {"version":3,"file":"MJConversationEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJConversationEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,iBAAiB,EAIjB,gBAAgB,EAEnB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAKH,oBAAoB,EAIvB,MAAM,+BAA+B,CAAC;AAGvC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBACa,0BAA2B,SAAQ,oBAAoB;IAChD,QAAQ,IAAI,gBAAgB;IAetB,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;YAgB3D,+CAA+C;IAmG7D,OAAO,CAAC,gBAAgB;CAS3B"}
@@ -4,30 +4,188 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { BaseEntity } from '@memberjunction/core';
8
- import { RegisterClass } from '@memberjunction/global';
9
- import { MJConversationEntity } from '@memberjunction/core-entities';
10
- import { CheckAnonymousOwnershipKeyChange } from './anonymousOwnershipKeyGuard.js';
7
+ import { BaseEntity, BaseEntityResult, ValidationErrorInfo, ValidationErrorType, WellKnownUserSource } from '@memberjunction/core';
8
+ import { RegisterClass, UUIDsEqual } from '@memberjunction/global';
9
+ import { CanonicalizeConversationAdditionalData, IsConversationHiddenByFieldSecurity, IsInheritingFolderAccess, IsInheritingFolderAccessInSQL, MJConversationEntity, MergeRestrictedFieldsIntoAnchorMetadata, ParseConversationAnchorMetadata, UserCanReadLinkedRecord } from '@memberjunction/core-entities';
10
+ import { CheckAnonymousOwnershipKeyChange, IsSetByTransactionVariable } from './anonymousOwnershipKeyGuard.js';
11
11
  /**
12
12
  * Server-side `MJ: Conversations` entity.
13
13
  *
14
- * Keeps `ExternalID` — the scope identity an anonymous visitor's realtime session is owned through — out
15
- * of an anonymous visitor's reach once the conversation exists. See {@link CheckAnonymousOwnershipKeyChange}.
16
- * Uses the synchronous `Validate()` so the rule runs on every save, like `MJAIAgentSessionEntityServer`.
14
+ * 1. Keeps `ExternalID` — the scope identity an anonymous visitor's realtime session is owned through — out
15
+ * of an anonymous visitor's reach once the conversation exists. See {@link CheckAnonymousOwnershipKeyChange}.
16
+ * 2. Keeps who a conversation belongs to and who it is shared with in its owner's hands: see
17
+ * {@link checkOwnerOnlyChange}. Uses the synchronous `Validate()` so the rules run on every save, like
18
+ * `MJAIAgentSessionEntityServer`.
19
+ * 3. Saves `AdditionalData` as compact JSON when it holds an object, so the stored text always uses the spelling
20
+ * the conversation list's SQL filter matches (`INHERIT_FOLDER_ACCESS_SQL_CLAUSE`), and refuses a value the filter
21
+ * and the parser would still read differently: see {@link checkInheritanceReadingsAgree}.
22
+ * 4. Enforces Row-Level Security (RLS) and Field-Level Security (FLS) on anchored conversations
23
+ * (`LinkedEntityID` + `LinkedRecordID` / `AnchorType`):
24
+ * - Verifies the saving user can read the linked record (`UserCanReadLinkedRecord`).
25
+ * - Verifies the saving user is not denied Read access on the anchored field or `restrictedFields`
26
+ * (`IsConversationHiddenByFieldSecurity`).
27
+ * - When `AnchorType === 'Field'` targets an FLS-governed field (`HasFieldPermissions === true`),
28
+ * automatically stamps that canonical field name into `AnchorMetadataObject.restrictedFields`.
17
29
  */
18
30
  let MJConversationEntityServer = class MJConversationEntityServer extends MJConversationEntity {
19
31
  Validate() {
20
32
  const result = super.Validate();
21
- const violation = CheckAnonymousOwnershipKeyChange(this, 'ExternalID');
22
- if (violation) {
23
- result.Errors.push(violation);
24
- result.Success = false;
33
+ for (const violation of [
34
+ CheckAnonymousOwnershipKeyChange(this, 'ExternalID'),
35
+ checkOwnerOnlyChange(this),
36
+ checkInheritanceReadingsAgree(this),
37
+ ]) {
38
+ if (violation) {
39
+ result.Errors.push(violation);
40
+ result.Success = false;
41
+ }
25
42
  }
26
43
  return result;
27
44
  }
45
+ async Save(options) {
46
+ const additionalData = typeof this.GetFieldByName === 'function' ? this.GetFieldByName('AdditionalData') : undefined;
47
+ if (additionalData?.Dirty) {
48
+ const canonical = CanonicalizeConversationAdditionalData(additionalData.Value);
49
+ if (canonical !== additionalData.Value) {
50
+ additionalData.Value = canonical;
51
+ }
52
+ }
53
+ const refusal = await this.checkAnchoredConversationAccessAndStampMetadata();
54
+ if (refusal) {
55
+ this.recordSaveDenied(refusal);
56
+ return false;
57
+ }
58
+ return super.Save(options);
59
+ }
60
+ async checkAnchoredConversationAccessAndStampMetadata() {
61
+ if (!this.LinkedEntityID || !this.LinkedRecordID) {
62
+ return null;
63
+ }
64
+ const provider = this.ProviderToUse;
65
+ const entityInfo = (typeof provider?.EntityByID === 'function'
66
+ ? provider.EntityByID(this.LinkedEntityID)
67
+ : undefined) ??
68
+ provider?.Entities?.find((e) => UUIDsEqual(e.ID, this.LinkedEntityID)) ??
69
+ null;
70
+ if (this.AnchorType && entityInfo && entityInfo.AllowRecordComments === false) {
71
+ return `Record commenting is disabled for ${entityInfo.DisplayNameOrName}.`;
72
+ }
73
+ // Security invariant: never persist quotedValue snapshots for restricted (FLS) or encrypted fields,
74
+ // so protected field values cannot escape into plain AnchorMetadata JSON, Record Changes, or indexes.
75
+ if (entityInfo && this.AnchorType === 'Field' && this.AnchorKey) {
76
+ const targetLower = this.AnchorKey.trim().toLowerCase();
77
+ const targetField = entityInfo.Fields.find((f) => f.Name.toLowerCase() === targetLower);
78
+ if (targetField && (targetField.HasFieldPermissions || targetField.Encrypt)) {
79
+ const existingMeta = ParseConversationAnchorMetadata(this.AnchorMetadataObject ?? this.AnchorMetadata);
80
+ if (existingMeta && existingMeta.quotedValue !== undefined) {
81
+ const sanitized = { ...existingMeta };
82
+ delete sanitized.quotedValue;
83
+ this.AnchorMetadataObject = sanitized;
84
+ }
85
+ }
86
+ }
87
+ // Auto-stamp restrictedFields when anchored directly to an FLS-governed field
88
+ if (entityInfo?.FieldLevelSecurityApplies && this.AnchorType === 'Field' && this.AnchorKey) {
89
+ const targetLower = this.AnchorKey.trim().toLowerCase();
90
+ const flsField = entityInfo.Fields.find((f) => f.HasFieldPermissions && f.Name.toLowerCase() === targetLower);
91
+ if (flsField) {
92
+ const existingMeta = ParseConversationAnchorMetadata(this.AnchorMetadataObject ?? this.AnchorMetadata);
93
+ const { Metadata, Changed } = MergeRestrictedFieldsIntoAnchorMetadata(existingMeta, [
94
+ flsField.Name
95
+ ]);
96
+ if (Changed) {
97
+ this.AnchorMetadataObject = Metadata;
98
+ }
99
+ }
100
+ }
101
+ if (provider?.ProviderType !== 'Database') {
102
+ return null;
103
+ }
104
+ const user = this.ContextCurrentUser;
105
+ if (!user || WellKnownUserSource.Instance.IsSystemUser(user)) {
106
+ return null;
107
+ }
108
+ const recordAccess = await UserCanReadLinkedRecord(provider, user, this.LinkedEntityID, this.LinkedRecordID);
109
+ if (!recordAccess.Allowed) {
110
+ return recordAccess.Reason ?? 'You do not have access to the linked record.';
111
+ }
112
+ if (this.AnchorType &&
113
+ recordAccess.EntityInfo &&
114
+ typeof recordAccess.EntityInfo.CanUserComment === 'function' &&
115
+ !recordAccess.EntityInfo.CanUserComment(user)) {
116
+ return `You do not have permission to post or modify comments on ${recordAccess.EntityInfo.DisplayNameOrName} records.`;
117
+ }
118
+ // fls-guard: block creating or updating a conversation anchored to a restricted field the user cannot read
119
+ if (IsConversationHiddenByFieldSecurity(recordAccess.EntityInfo, user, this.AnchorType, this.AnchorKey, this.AnchorMetadataObject ?? this.AnchorMetadata)) {
120
+ return 'You do not have permission to access or comment on this restricted field.';
121
+ }
122
+ return null;
123
+ }
124
+ recordSaveDenied(message) {
125
+ const result = new BaseEntityResult();
126
+ result.Success = false;
127
+ result.Type = this.IsSaved ? 'update' : 'create';
128
+ result.Message = message;
129
+ result.StartedAt = new Date();
130
+ result.EndedAt = new Date();
131
+ this.RegisterResultHistoryEntry(result);
132
+ }
28
133
  };
29
134
  MJConversationEntityServer = __decorate([
30
135
  RegisterClass(BaseEntity, 'MJ: Conversations')
31
136
  ], MJConversationEntityServer);
32
137
  export { MJConversationEntityServer };
138
+ /**
139
+ * Refuses `AdditionalData` that the conversation list's SQL filter and the parser would read differently, from
140
+ * anyone, the owner and the server included. The `LIKE` filter also matches the key nested in another object,
141
+ * or in another letter case, where the parser sees no opt-in: search, which filters with the SQL alone, would
142
+ * then show the conversation to its folder's audience while the list and the owner's menu say it is not shared.
143
+ * Checks the compact form the save stores.
144
+ */
145
+ function checkInheritanceReadingsAgree(entity) {
146
+ const additionalData = entity.GetFieldByName('AdditionalData');
147
+ if (!additionalData?.Dirty) {
148
+ return null;
149
+ }
150
+ const stored = CanonicalizeConversationAdditionalData(additionalData.Value);
151
+ if (IsInheritingFolderAccess({ AdditionalData: stored }) === IsInheritingFolderAccessInSQL(stored)) {
152
+ return null;
153
+ }
154
+ return new ValidationErrorInfo('AdditionalData', 'Set folder inheritance only as a top-level "inheritFolderAccess": true, so every reader agrees on whether this conversation is shared.', null, ValidationErrorType.Failure);
155
+ }
156
+ /**
157
+ * Refuses a change to an existing conversation's folder (`ProjectID`), owner (`UserID`) or folder
158
+ * inheritance (`AdditionalData.inheritFolderAccess`) by anyone but its owner.
159
+ *
160
+ * Those three decide who else can see the conversation: turning inheritance on shows it to everyone its folder
161
+ * is shared with, and moving an inheriting conversation into a Shared or Public folder shows it to that folder's
162
+ * audience. An Edit grant lets someone work in a conversation, not publish it. The server itself (no context user, or the system user) is exempt, as is a conversation with
163
+ * no owner on record. A transaction variable that sets one of these fields, or `ID`, counts as a change:
164
+ * it is applied at submit, after this check has run.
165
+ */
166
+ function checkOwnerOnlyChange(entity) {
167
+ const user = entity.ContextCurrentUser;
168
+ if (!entity.IsSaved || !user || WellKnownUserSource.Instance.IsSystemUser(user)) {
169
+ return null;
170
+ }
171
+ const owner = entity.GetFieldByName('UserID')?.OldValue;
172
+ if (!owner || UUIDsEqual(owner, user.ID)) {
173
+ return null;
174
+ }
175
+ const additionalData = entity.GetFieldByName('AdditionalData');
176
+ const before = additionalData?.OldValue;
177
+ const after = additionalData?.Value;
178
+ // Both readings: the parser's, and the SQL filter's. A rewrite one of them reads differently (an odd
179
+ // spelling the LIKE misses) would otherwise re-share the conversation past a parser-only check.
180
+ const inheritanceChanged = !!additionalData?.Dirty &&
181
+ (IsInheritingFolderAccess({ AdditionalData: before }) !== IsInheritingFolderAccess({ AdditionalData: after }) ||
182
+ IsInheritingFolderAccessInSQL(before) !== IsInheritingFolderAccessInSQL(after));
183
+ const changed = ['ProjectID', 'UserID'].find((name) => entity.GetFieldByName(name)?.Dirty)
184
+ ?? (inheritanceChanged ? 'AdditionalData' : undefined)
185
+ ?? (IsSetByTransactionVariable(entity, ['ProjectID', 'UserID', 'AdditionalData', 'ID']) ? 'ProjectID' : undefined);
186
+ if (!changed) {
187
+ return null;
188
+ }
189
+ return new ValidationErrorInfo(changed, "Only the conversation's owner can move it to another folder, change its owner, or change whether it inherits its folder's access.", null, ValidationErrorType.Failure);
190
+ }
33
191
  //# sourceMappingURL=MJConversationEntityServer.server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MJConversationEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJConversationEntityServer.server.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAoB,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAEhF;;;;;;GAMG;AAEI,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,oBAAoB;IAChD,QAAQ;QACpB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,SAAS,GAAG,gCAAgC,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;QACvE,IAAI,SAAS,EAAE,CAAC;YACZ,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC9B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3B,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ,CAAA;AAVY,0BAA0B;IADtC,aAAa,CAAC,UAAU,EAAE,mBAAmB,CAAC;GAClC,0BAA0B,CAUtC"}
1
+ {"version":3,"file":"MJConversationEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJConversationEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MJEntityDocumentEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJEntityDocumentEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,iBAAiB,EAAE,iBAAiB,EAAgC,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE9J,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAkF,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjJ;;;;;;;;;;;;;;GAcG;AACH,qBACa,4BAA6B,SAAQ,8BAA8B;IAC5E,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAuB;IAC5D;;;;;OAKG;IACH,WAAkB,qBAAqB,IAAI,MAAM,GAAG,IAAI,CAEvD;IACD,WAAkB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAE3D;IAED,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAuB;IAC7D;;;;OAIG;IACH,WAAkB,sBAAsB,IAAI,MAAM,GAAG,IAAI,CAExD;IACD,WAAkB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAE5D;IAED;;;;;OAKG;cACa,iCAAiC,IAAI,OAAO,CAAC,MAAM,CAAC;IAuBpE,oEAAoE;cACpD,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBzE;;;;;;;;;;;;;;OAcG;IACY,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoClE,qEAAqE;cACrD,4BAA4B,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAwChH,qFAAqF;cACrE,uCAAuC,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAoChH,+EAA+E;cAC/D,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC;CAgB9D"}
1
+ {"version":3,"file":"MJEntityDocumentEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJEntityDocumentEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,iBAAiB,EAAE,iBAAiB,EAAgC,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAE9J,OAAO,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,EAAkF,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAEjJ;;;;;;;;;;;;;;GAcG;AACH,qBACa,4BAA6B,SAAQ,8BAA8B;IAC5E,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAuB;IAC5D;;;;;OAKG;IACH,WAAkB,qBAAqB,IAAI,MAAM,GAAG,IAAI,CAEvD;IACD,WAAkB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAE3D;IAED,OAAO,CAAC,MAAM,CAAC,uBAAuB,CAAuB;IAC7D;;;;OAIG;IACH,WAAkB,sBAAsB,IAAI,MAAM,GAAG,IAAI,CAExD;IACD,WAAkB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,EAE5D;IAED;;;;;OAKG;cACa,iCAAiC,IAAI,OAAO,CAAC,MAAM,CAAC;IAuBpE,oEAAoE;cACpD,0BAA0B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBzE;;;;;;;;;;;;;;OAcG;IACY,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoClE,qEAAqE;cACrD,4BAA4B,CAAC,EAAE,EAAE,iBAAiB,EAAE,EAAE,CAAC,EAAE,oBAAoB,GAAG,OAAO,CAAC,OAAO,CAAC;IAyChH,qFAAqF;cACrE,uCAAuC,CAAC,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAoChH,+EAA+E;cAC/D,wBAAwB,IAAI,OAAO,CAAC,MAAM,CAAC;CAgB9D"}
@@ -156,6 +156,7 @@ let MJEntityDocumentEntityServer = class MJEntityDocumentEntityServer extends MJ
156
156
  OrderBy: "__mj_CreatedAt ASC",
157
157
  ResultType: 'entity_object',
158
158
  MaxRows: 1,
159
+ SkipTotalRowCount: true,
159
160
  }, this.ContextCurrentUser);
160
161
  let tc;
161
162
  if (result && result.Success && result.Results.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"MJEntityDocumentEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJEntityDocumentEntityServer.server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MJEntityDocumentEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJEntityDocumentEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"MJListDetailEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJListDetailEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,mBAAmB,EAAY,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,0BAA0B,EAAwB,MAAM,+BAA+B,CAAC;AAEjG;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,wBAAyB,SAAQ,0BAA0B;IAC9C,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB7E;;;;;OAKG;YACW,4BAA4B;CA2B7C"}
1
+ {"version":3,"file":"MJListDetailEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJListDetailEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,mBAAmB,EAAY,MAAM,sBAAsB,CAAC;AAEnG,OAAO,EAAE,0BAA0B,EAAwB,MAAM,+BAA+B,CAAC;AAEjG;;;;;;;;;;;;;;;;;GAiBG;AACH,qBACa,wBAAyB,SAAQ,0BAA0B;IAC9C,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;IAoB7E;;;;;OAKG;YACW,4BAA4B;CA4B7C"}
@@ -64,6 +64,7 @@ let MJListDetailEntityServer = class MJListDetailEntityServer extends MJListDeta
64
64
  ExtraFilter: `ID = '${this.ListID}'`,
65
65
  Fields: ['ID', 'UserID'],
66
66
  MaxRows: 1,
67
+ SkipTotalRowCount: true,
67
68
  ResultType: 'simple'
68
69
  }, this.ContextCurrentUser);
69
70
  if (result.Success && result.Results && result.Results.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"MJListDetailEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJListDetailEntityServer.server.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAuB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAEjG;;;;;;;;;;;;;;;;;GAiBG;AAEI,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,0BAA0B;IACpD,KAAK,CAAC,MAAM,CAAC,OAA6B;QACtD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAE9D,yFAAyF;QACzF,8FAA8F;QAC9F,IAAI,WAAW,IAAI,IAAI;YACnB,CAAC,oBAAoB,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC5E,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC;YACvB,MAAM,CAAC,OAAO,GAAG,yEAAyE;gBACtF,iFAAiF,CAAC;YACtF,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,4BAA4B;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACD,wFAAwF;YACxF,mFAAmF;YACnF,uEAAuE;YACvE,MAAM,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAiC;gBAC5D,UAAU,EAAE,WAAW;gBACvB,WAAW,EAAE,SAAS,IAAI,CAAC,MAAM,GAAG;gBACpC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;gBACxB,OAAO,EAAE,CAAC;gBACV,UAAU,EAAE,QAAQ;aACvB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAE5B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;YAC5C,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,qFAAqF;YACrF,mFAAmF;YACnF,QAAQ,CAAC,6EAA6E,IAAI,CAAC,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AAtDY,wBAAwB;IADpC,aAAa,CAAC,UAAU,EAAE,kBAAkB,CAAC;GACjC,wBAAwB,CAsDpC"}
1
+ {"version":3,"file":"MJListDetailEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJListDetailEntityServer.server.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAuB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACnG,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAEjG;;;;;;;;;;;;;;;;;GAiBG;AAEI,IAAM,wBAAwB,GAA9B,MAAM,wBAAyB,SAAQ,0BAA0B;IACpD,KAAK,CAAC,MAAM,CAAC,OAA6B;QACtD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAE9D,yFAAyF;QACzF,8FAA8F;QAC9F,IAAI,WAAW,IAAI,IAAI;YACnB,CAAC,oBAAoB,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAC5E,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,IAAI,GAAG,QAAQ,CAAC;YACvB,MAAM,CAAC,OAAO,GAAG,yEAAyE;gBACtF,iFAAiF,CAAC;YACtF,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;YAC5B,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;YACxC,OAAO,KAAK,CAAC;QACjB,CAAC;QACD,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,4BAA4B;QACtC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACD,wFAAwF;YACxF,mFAAmF;YACnF,uEAAuE;YACvE,MAAM,EAAE,GAAG,IAAI,CAAC,oBAAoB,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAiC;gBAC5D,UAAU,EAAE,WAAW;gBACvB,WAAW,EAAE,SAAS,IAAI,CAAC,MAAM,GAAG;gBACpC,MAAM,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;gBACxB,OAAO,EAAE,CAAC;gBACV,iBAAiB,EAAE,IAAI;gBACvB,UAAU,EAAE,QAAQ;aACvB,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAE5B,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC;YAC5C,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,qFAAqF;YACrF,mFAAmF;YACnF,QAAQ,CAAC,6EAA6E,IAAI,CAAC,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;QAChH,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ,CAAA;AAvDY,wBAAwB;IADpC,aAAa,CAAC,UAAU,EAAE,kBAAkB,CAAC;GACjC,wBAAwB,CAuDpC"}
@@ -0,0 +1,21 @@
1
+ import { ValidationResult } from '@memberjunction/core';
2
+ import { MJProjectEntityExtended } from '@memberjunction/core-entities';
3
+ /**
4
+ * Server-side `MJ: Projects` (conversation folder) entity.
5
+ *
6
+ * Keeps a folder's owner and place in its owner's hands: see {@link checkFolderOwnerOnlyChange}. Uses the
7
+ * synchronous `Validate()` so the rule runs on every save, like `MJConversationEntityServer`. `ValidateAsync()`
8
+ * refuses a parent that would make the folder its own ancestor.
9
+ */
10
+ export declare class MJProjectEntityServer extends MJProjectEntityExtended {
11
+ Validate(): ValidationResult;
12
+ ValidateAsync(): Promise<ValidationResult>;
13
+ /**
14
+ * Refuses a `ParentID` that makes the folder its own ancestor. The sidebar builds the tree from the top, so a
15
+ * cycle hides every folder in it from everyone. Walks up from the new parent as the system user, since the
16
+ * chain can pass through folders the caller cannot read, for at most the engine's {@link MAX_BRANCH_DEPTH}
17
+ * levels.
18
+ */
19
+ private checkParentCycle;
20
+ }
21
+ //# sourceMappingURL=MJProjectEntityServer.server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MJProjectEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJProjectEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiE,gBAAgB,EAAuB,MAAM,sBAAsB,CAAC;AAE5I,OAAO,EAAoB,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAI1F;;;;;;GAMG;AACH,qBACa,qBAAsB,SAAQ,uBAAuB;IAC9C,QAAQ,IAAI,gBAAgB;IAUtB,aAAa,IAAI,OAAO,CAAC,gBAAgB,CAAC;IAUhE;;;;;OAKG;YACW,gBAAgB;CA6BjC"}
@@ -0,0 +1,106 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { BaseEntity, RunView, ValidationErrorInfo, ValidationErrorType, WellKnownUserSource } from '@memberjunction/core';
8
+ import { EscapeSQLString, RegisterClass, UUIDsEqual } from '@memberjunction/global';
9
+ import { MAX_BRANCH_DEPTH, MJProjectEntityExtended } from '@memberjunction/core-entities';
10
+ import { UserCache } from '@memberjunction/generic-database-provider';
11
+ import { IsSetByTransactionVariable } from './anonymousOwnershipKeyGuard.js';
12
+ /**
13
+ * Server-side `MJ: Projects` (conversation folder) entity.
14
+ *
15
+ * Keeps a folder's owner and place in its owner's hands: see {@link checkFolderOwnerOnlyChange}. Uses the
16
+ * synchronous `Validate()` so the rule runs on every save, like `MJConversationEntityServer`. `ValidateAsync()`
17
+ * refuses a parent that would make the folder its own ancestor.
18
+ */
19
+ let MJProjectEntityServer = class MJProjectEntityServer extends MJProjectEntityExtended {
20
+ Validate() {
21
+ const result = super.Validate();
22
+ const violation = checkFolderOwnerOnlyChange(this);
23
+ if (violation) {
24
+ result.Errors.push(violation);
25
+ result.Success = false;
26
+ }
27
+ return result;
28
+ }
29
+ async ValidateAsync() {
30
+ const result = await super.ValidateAsync();
31
+ const violation = await this.checkParentCycle();
32
+ if (violation) {
33
+ result.Errors.push(violation);
34
+ result.Success = false;
35
+ }
36
+ return result;
37
+ }
38
+ /**
39
+ * Refuses a `ParentID` that makes the folder its own ancestor. The sidebar builds the tree from the top, so a
40
+ * cycle hides every folder in it from everyone. Walks up from the new parent as the system user, since the
41
+ * chain can pass through folders the caller cannot read, for at most the engine's {@link MAX_BRANCH_DEPTH}
42
+ * levels.
43
+ */
44
+ async checkParentCycle() {
45
+ if (!this.ParentID || !this.GetFieldByName('ParentID')?.Dirty) {
46
+ return null;
47
+ }
48
+ const refuse = (message) => new ValidationErrorInfo('ParentID', message, this.ParentID, ValidationErrorType.Failure);
49
+ if (UUIDsEqual(this.ParentID, this.ID)) {
50
+ return refuse('A folder cannot be moved into itself or one of its subfolders.');
51
+ }
52
+ if (!this.IsSaved) {
53
+ return null; // nothing points at a new folder yet
54
+ }
55
+ const rv = new RunView(this.RunViewProviderToUse);
56
+ const readUser = UserCache.Instance.GetSystemUser() ?? this.ContextCurrentUser;
57
+ let cursor = this.ParentID;
58
+ for (let depth = 0; cursor && depth < MAX_BRANCH_DEPTH; depth++) {
59
+ const read = await rv.RunView({ EntityName: 'MJ: Projects', ExtraFilter: `ID='${EscapeSQLString(cursor)}'`, Fields: ['ParentID'], ResultType: 'simple' }, readUser);
60
+ if (!read.Success) {
61
+ return refuse(`Could not check the folder's new place: ${read.ErrorMessage}`);
62
+ }
63
+ cursor = read.Results[0]?.ParentID ?? null;
64
+ if (cursor && UUIDsEqual(cursor, this.ID)) {
65
+ return refuse('A folder cannot be moved into itself or one of its subfolders.');
66
+ }
67
+ }
68
+ return cursor ? refuse(`Folders cannot be nested more than ${MAX_BRANCH_DEPTH} levels deep.`) : null;
69
+ }
70
+ };
71
+ MJProjectEntityServer = __decorate([
72
+ RegisterClass(BaseEntity, 'MJ: Projects')
73
+ ], MJProjectEntityServer);
74
+ export { MJProjectEntityServer };
75
+ /**
76
+ * Refuses a change to an existing folder's owner (`OwnerUserID`) or parent (`ParentID`) by anyone but its
77
+ * stored owner.
78
+ *
79
+ * `OwnerUserID` decides who sees the folder: clearing it makes the folder Public, which lists it, and the
80
+ * conversations in it that inherit its access, for everyone, and setting it to yourself lets you share someone
81
+ * else's folder. So only
82
+ * the owner may change it, including making it Public. A Public folder has no owner, so nobody may claim it;
83
+ * its `ParentID` stays open, since a parent grants no access. The server itself (no context user, or the
84
+ * system user) is exempt. A transaction variable that sets one of these fields, or `ID`, counts as a change:
85
+ * it is applied at submit, after this check has run.
86
+ */
87
+ function checkFolderOwnerOnlyChange(entity) {
88
+ const user = entity.ContextCurrentUser;
89
+ if (!entity.IsSaved || !user || WellKnownUserSource.Instance.IsSystemUser(user)) {
90
+ return null;
91
+ }
92
+ const owner = entity.GetFieldByName('OwnerUserID')?.OldValue;
93
+ if (owner && UUIDsEqual(owner, user.ID)) {
94
+ return null;
95
+ }
96
+ const guarded = owner ? ['OwnerUserID', 'ParentID'] : ['OwnerUserID'];
97
+ const changed = guarded.find((name) => entity.GetFieldByName(name)?.Dirty) ??
98
+ (IsSetByTransactionVariable(entity, [...guarded, 'ID']) ? guarded[0] : undefined);
99
+ if (!changed) {
100
+ return null;
101
+ }
102
+ return new ValidationErrorInfo(changed, owner
103
+ ? "Only the folder's owner can change its owner or move it to another folder."
104
+ : 'A Public folder has no owner, so it cannot be claimed.', null, ValidationErrorType.Failure);
105
+ }
106
+ //# sourceMappingURL=MJProjectEntityServer.server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MJProjectEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJProjectEntityServer.server.ts"],"names":[],"mappings":"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"}