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

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 (81) hide show
  1. package/dist/custom/MJAIAgentSessionEntityServer.server.d.ts +9 -26
  2. package/dist/custom/MJAIAgentSessionEntityServer.server.d.ts.map +1 -1
  3. package/dist/custom/MJAIAgentSessionEntityServer.server.js +21 -44
  4. package/dist/custom/MJAIAgentSessionEntityServer.server.js.map +1 -1
  5. package/dist/custom/MJComponentEntityServer.server.d.ts +9 -0
  6. package/dist/custom/MJComponentEntityServer.server.d.ts.map +1 -1
  7. package/dist/custom/MJComponentEntityServer.server.js +25 -1
  8. package/dist/custom/MJComponentEntityServer.server.js.map +1 -1
  9. package/dist/custom/MJConversationEntityServer.server.d.ts +13 -0
  10. package/dist/custom/MJConversationEntityServer.server.d.ts.map +1 -0
  11. package/dist/custom/MJConversationEntityServer.server.js +33 -0
  12. package/dist/custom/MJConversationEntityServer.server.js.map +1 -0
  13. package/dist/custom/MJDashboardEntityServer.server.d.ts +14 -0
  14. package/dist/custom/MJDashboardEntityServer.server.d.ts.map +1 -0
  15. package/dist/custom/MJDashboardEntityServer.server.js +38 -0
  16. package/dist/custom/MJDashboardEntityServer.server.js.map +1 -0
  17. package/dist/custom/MJDuplicateRunEntityServer.server.d.ts +34 -2
  18. package/dist/custom/MJDuplicateRunEntityServer.server.d.ts.map +1 -1
  19. package/dist/custom/MJDuplicateRunEntityServer.server.js +103 -23
  20. package/dist/custom/MJDuplicateRunEntityServer.server.js.map +1 -1
  21. package/dist/custom/MJEntityAlternateBaseViewEntityServer.server.d.ts +73 -0
  22. package/dist/custom/MJEntityAlternateBaseViewEntityServer.server.d.ts.map +1 -0
  23. package/dist/custom/MJEntityAlternateBaseViewEntityServer.server.js +391 -0
  24. package/dist/custom/MJEntityAlternateBaseViewEntityServer.server.js.map +1 -0
  25. package/dist/custom/MJEntityFieldPermissionEntityServer.server.d.ts +96 -22
  26. package/dist/custom/MJEntityFieldPermissionEntityServer.server.d.ts.map +1 -1
  27. package/dist/custom/MJEntityFieldPermissionEntityServer.server.js +239 -55
  28. package/dist/custom/MJEntityFieldPermissionEntityServer.server.js.map +1 -1
  29. package/dist/custom/MJQueryEntityServer.server.d.ts +8 -0
  30. package/dist/custom/MJQueryEntityServer.server.d.ts.map +1 -1
  31. package/dist/custom/MJQueryEntityServer.server.js +45 -2
  32. package/dist/custom/MJQueryEntityServer.server.js.map +1 -1
  33. package/dist/custom/MJUserRoleEntityServer.server.d.ts +74 -7
  34. package/dist/custom/MJUserRoleEntityServer.server.d.ts.map +1 -1
  35. package/dist/custom/MJUserRoleEntityServer.server.js +206 -20
  36. package/dist/custom/MJUserRoleEntityServer.server.js.map +1 -1
  37. package/dist/custom/MJUserViewEntityServer.server.d.ts +17 -1
  38. package/dist/custom/MJUserViewEntityServer.server.d.ts.map +1 -1
  39. package/dist/custom/MJUserViewEntityServer.server.js +95 -7
  40. package/dist/custom/MJUserViewEntityServer.server.js.map +1 -1
  41. package/dist/custom/MJVectorIndexEntityServer.server.d.ts +2 -0
  42. package/dist/custom/MJVectorIndexEntityServer.server.d.ts.map +1 -1
  43. package/dist/custom/MJVectorIndexEntityServer.server.js +33 -0
  44. package/dist/custom/MJVectorIndexEntityServer.server.js.map +1 -1
  45. package/dist/custom/anonymousOwnershipKeyGuard.d.ts +42 -0
  46. package/dist/custom/anonymousOwnershipKeyGuard.d.ts.map +1 -0
  47. package/dist/custom/anonymousOwnershipKeyGuard.js +36 -0
  48. package/dist/custom/anonymousOwnershipKeyGuard.js.map +1 -0
  49. package/dist/custom/approvalStamp.d.ts +37 -0
  50. package/dist/custom/approvalStamp.d.ts.map +1 -0
  51. package/dist/custom/approvalStamp.js +67 -0
  52. package/dist/custom/approvalStamp.js.map +1 -0
  53. package/dist/custom/fieldPermissionAccess.d.ts +31 -0
  54. package/dist/custom/fieldPermissionAccess.d.ts.map +1 -0
  55. package/dist/custom/fieldPermissionAccess.js +38 -0
  56. package/dist/custom/fieldPermissionAccess.js.map +1 -0
  57. package/dist/custom/fieldPermissionReconciler.d.ts.map +1 -1
  58. package/dist/custom/fieldPermissionReconciler.js +12 -2
  59. package/dist/custom/fieldPermissionReconciler.js.map +1 -1
  60. package/dist/custom/query-extraction/resolve.d.ts.map +1 -1
  61. package/dist/custom/query-extraction/resolve.js +25 -7
  62. package/dist/custom/query-extraction/resolve.js.map +1 -1
  63. package/dist/custom/query-extraction/sync.d.ts +1 -1
  64. package/dist/custom/query-extraction/sync.d.ts.map +1 -1
  65. package/dist/custom/query-extraction/sync.js +84 -21
  66. package/dist/custom/query-extraction/sync.js.map +1 -1
  67. package/dist/custom/query-extraction/types.d.ts +4 -0
  68. package/dist/custom/query-extraction/types.d.ts.map +1 -1
  69. package/dist/custom/systemUserGuardState.d.ts +73 -0
  70. package/dist/custom/systemUserGuardState.d.ts.map +1 -0
  71. package/dist/custom/systemUserGuardState.js +161 -0
  72. package/dist/custom/systemUserGuardState.js.map +1 -0
  73. package/dist/custom/template-extraction/parser.js +5 -2
  74. package/dist/custom/template-extraction/parser.js.map +1 -1
  75. package/dist/custom/template-extraction/types.d.ts +1 -1
  76. package/dist/custom/template-extraction/types.d.ts.map +1 -1
  77. package/dist/index.d.ts +5 -0
  78. package/dist/index.d.ts.map +1 -1
  79. package/dist/index.js +5 -0
  80. package/dist/index.js.map +1 -1
  81. package/package.json +30 -30
@@ -6,11 +6,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  var MJUserViewEntityServer_1;
8
8
  import { RegisterClass, CleanAndParseJSON } from "@memberjunction/global";
9
- import { BaseEntity, LogError, ValidationErrorInfo, ValidationErrorType } from "@memberjunction/core";
10
- import { MJUserViewEntityExtended } from '@memberjunction/core-entities';
9
+ import { BaseEntity, ExtractAlternateBaseViewFromDisplayState, LogError, ValidationErrorInfo, ValidationErrorType } from "@memberjunction/core";
10
+ import { ComputeUserViewFingerprintAsync, MJUserViewEntityExtended } from '@memberjunction/core-entities';
11
11
  import { AIPromptParams } from "@memberjunction/ai-core-plus";
12
12
  import { AIEngine } from "@memberjunction/aiengine";
13
13
  import { AIPromptRunner } from "@memberjunction/ai-prompts";
14
+ import { ApplyApprovalRulesAsync, ApprovalRefusalResult } from "./approvalStamp.js";
14
15
  import { IsClientClauseScreeningProvider } from "@memberjunction/generic-database-provider";
15
16
  let MJUserViewEntityServer = MJUserViewEntityServer_1 = class MJUserViewEntityServer extends MJUserViewEntityExtended {
16
17
  /**
@@ -19,13 +20,77 @@ let MJUserViewEntityServer = MJUserViewEntityServer_1 = class MJUserViewEntitySe
19
20
  get SmartFilterImplemented() {
20
21
  return true;
21
22
  }
23
+ /**
24
+ * Applies the approval rules (see `ApplyApprovalRulesAsync`). The base save regenerates the
25
+ * WhereClause before it writes, so an approving save stamps the fingerprint after the write,
26
+ * from the definition as stored, with one more write.
27
+ */
28
+ async Save(options) {
29
+ let approving;
30
+ try {
31
+ approving = !options?.ReplayOnly && await ApplyApprovalRulesAsync(this, 'ApprovalStatus', this.ApprovalStatus);
32
+ }
33
+ catch (e) {
34
+ this.RegisterResultHistoryEntry(ApprovalRefusalResult(this, e));
35
+ return false;
36
+ }
37
+ if (!await super.Save(options)) {
38
+ return false;
39
+ }
40
+ if (approving) {
41
+ try {
42
+ this.ApprovedFingerprint = await ComputeUserViewFingerprintAsync(this);
43
+ if (!await super.Save(options)) {
44
+ LogError(`[MJUserViewEntityServer] View "${this.Name}" was approved but its fingerprint was not saved: ${this.LatestResult?.CompleteMessage}`);
45
+ }
46
+ }
47
+ catch (e) {
48
+ LogError(`[MJUserViewEntityServer] View "${this.Name}" was approved but its fingerprint could not be computed: ${e instanceof Error ? e.message : String(e)}`);
49
+ }
50
+ }
51
+ return true;
52
+ }
22
53
  Validate() {
23
54
  const result = super.Validate();
24
55
  this.validateCustomWhereClauseAuthorization(result);
56
+ this.validatePinnedAlternateBaseView(result);
25
57
  this.validateStoredClauses(result);
26
58
  result.Success = result.Success && result.Errors.length === 0;
27
59
  return result;
28
60
  }
61
+ /**
62
+ * Validates that a pinned `DisplayState.alternateBaseView` (if newly set or changed)
63
+ * corresponds to a registered, usable alternate base view on the view's target entity.
64
+ * Existing saved views whose pinned alternate base view did not change are allowed to save
65
+ * other edits (e.g. renaming or clearing the pin after an admin disabled the alternate view).
66
+ */
67
+ validatePinnedAlternateBaseView(result) {
68
+ const pinnedName = this.AlternateBaseView;
69
+ if (!pinnedName || !this.ViewEntityInfo) {
70
+ return;
71
+ }
72
+ const smartPromptModified = Boolean(this.SmartFilterEnabled &&
73
+ (this.GetFieldByName('SmartFilterPrompt')?.Dirty === true ||
74
+ this.GetFieldByName('SmartFilterEnabled')?.Dirty === true));
75
+ if (this.IsSaved && !this.hasAlternateBaseViewChanged() && !smartPromptModified) {
76
+ return;
77
+ }
78
+ const abv = this.ViewEntityInfo.GetAlternateBaseView(pinnedName);
79
+ if (!abv) {
80
+ result.Errors.push(new ValidationErrorInfo('DisplayState', `Alternate Base View '${pinnedName}' is not registered on entity '${this.ViewEntityInfo.Name}'.`, pinnedName, ValidationErrorType.Failure));
81
+ }
82
+ else if (!abv.IsUsable) {
83
+ result.Errors.push(new ValidationErrorInfo('DisplayState', `Alternate Base View '${pinnedName}' on entity '${this.ViewEntityInfo.Name}' has status '${abv.Status}' and cannot be used.`, pinnedName, ValidationErrorType.Failure));
84
+ }
85
+ }
86
+ hasAlternateBaseViewChanged() {
87
+ const displayStateField = this.GetFieldByName('DisplayState');
88
+ if (!displayStateField?.Dirty) {
89
+ return false;
90
+ }
91
+ const oldPinned = ExtractAlternateBaseViewFromDisplayState(typeof displayStateField.OldValue === 'string' ? displayStateField.OldValue : null);
92
+ return (oldPinned ?? null) !== (this.AlternateBaseView ?? null);
93
+ }
29
94
  /**
30
95
  * SECURITY: screens the SQL this view stores with the clause screen the RunView API applies to
31
96
  * client filters — its WhereClause (set directly, compiled from FilterState, or made by a Smart
@@ -126,6 +191,12 @@ let MJUserViewEntityServer = MJUserViewEntityServer_1 = class MJUserViewEntitySe
126
191
  */
127
192
  async GenerateSmartFilterWhereClause(prompt, entityInfo) {
128
193
  try {
194
+ if (this.AlternateBaseView && entityInfo) {
195
+ const pinnedAbv = entityInfo.GetAlternateBaseView(this.AlternateBaseView);
196
+ if (!pinnedAbv || !pinnedAbv.IsUsable) {
197
+ return { whereClause: '', userExplanation: '' };
198
+ }
199
+ }
129
200
  // Ensure AIEngine is configured
130
201
  await AIEngine.Instance.Config(false, this.ContextCurrentUser);
131
202
  // Find the Smart Filter Generation prompt
@@ -199,18 +270,30 @@ let MJUserViewEntityServer = MJUserViewEntityServer_1 = class MJUserViewEntitySe
199
270
  * This data is used to populate the Nunjucks template variables.
200
271
  */
201
272
  BuildTemplateData(entityInfo) {
273
+ const pinnedAbv = this.AlternateBaseView
274
+ ? entityInfo.GetAlternateBaseView(this.AlternateBaseView)
275
+ : undefined;
276
+ const effectiveBaseView = pinnedAbv && pinnedAbv.IsUsable ? pinnedAbv.ViewName : entityInfo.BaseView;
202
277
  const processedViews = [entityInfo.BaseView];
278
+ if (effectiveBaseView !== entityInfo.BaseView) {
279
+ processedViews.push(effectiveBaseView);
280
+ }
203
281
  const md = this.ProviderToUse;
204
282
  const listsEntity = md.EntityByName("MJ: Lists");
205
283
  const listDetailsEntity = md.EntityByName("MJ: List Details");
206
284
  // Build fields description
207
- const fieldsDescription = entityInfo.Fields.map(f => {
285
+ let fieldsDescription = entityInfo.Fields.map(f => {
208
286
  let ret = `${f.Name} (${f.Type})`;
209
287
  if (f.RelatedEntity) {
210
288
  ret += ` (fkey to ${f.RelatedEntityBaseView})`;
211
289
  }
212
290
  return ret;
213
291
  }).join(',');
292
+ if (pinnedAbv && pinnedAbv.IsUsable) {
293
+ fieldsDescription +=
294
+ `\n[Base View Context: Reading from alternate base view '${pinnedAbv.EffectiveDisplayName}' (${pinnedAbv.ViewName}): ${pinnedAbv.Description}. ` +
295
+ `Do NOT duplicate conditions already enforced by this base view unless the user explicitly asks to refine them.]`;
296
+ }
214
297
  // Build related views description
215
298
  const relatedViewsDescription = this.BuildRelatedViewsDescription(entityInfo, md, processedViews);
216
299
  // Build lists fields
@@ -221,16 +304,21 @@ let MJUserViewEntityServer = MJUserViewEntityServer_1 = class MJUserViewEntitySe
221
304
  const listDetailsFields = listDetailsEntity ? listDetailsEntity.Fields.map(f => {
222
305
  return f.Name + ' (' + f.SQLFullType + ')';
223
306
  }).join(', ') : '';
224
- return {
307
+ const templateData = {
225
308
  entityName: entityInfo.Name,
226
309
  entityId: entityInfo.ID,
227
- baseView: entityInfo.BaseView,
310
+ baseView: effectiveBaseView,
228
311
  fieldsDescription,
229
- relatedViewsDescription: processedViews.length > 1 ? relatedViewsDescription : '',
312
+ relatedViewsDescription: relatedViewsDescription.length > 0 ? relatedViewsDescription : '',
230
313
  listsSchema: listsEntity?.SchemaName || '__mj',
231
314
  listsFields,
232
- listDetailsFields
315
+ listDetailsFields,
233
316
  };
317
+ if (pinnedAbv && pinnedAbv.IsUsable) {
318
+ templateData.alternateBaseViewName = pinnedAbv.Name;
319
+ templateData.alternateBaseViewDescription = pinnedAbv.Description;
320
+ }
321
+ return templateData;
234
322
  }
235
323
  /**
236
324
  * Builds the description of related views for the prompt template.
@@ -1 +1 @@
1
- {"version":3,"file":"MJUserViewEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJUserViewEntityServer.server.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAc,QAAQ,EAA+B,mBAAmB,EAAE,mBAAmB,EAAoB,MAAM,sBAAsB,CAAC;AACjK,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAA;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,+BAA+B,EAAE,MAAM,2CAA2C,CAAC;AA0BrF,IAAM,sBAAsB,8BAA5B,MAAM,sBAAuB,SAAQ,wBAAwB;IAChE;;OAEG;IACH,IAAuB,sBAAsB;QACzC,OAAO,IAAI,CAAC;IAChB,CAAC;IAEe,QAAQ;QACpB,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,CAAC,sCAAsC,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC;QAC9D,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;;;;;OAQG;IACK,qBAAqB,CAAC,MAAwB;QAClD,MAAM,OAAO,GAAG,CAAC,GAAG,MAAgB,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC,CAAC;QAEnH,IAAI,CAAC,IAAI,CAAC,iBAAiB,IAAI,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,EAAE,CAAC;YACzE,MAAM,KAAK,GAAG,wBAAsB,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACrF,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QACD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChF,IAAI,OAAO,EAAE,CAAC;YACV,8FAA8F;YAC9F,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1F,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,aAAa;QACjB,IAAI,CAAC;YACD,OAAO,IAAI,CAAC,aAAa,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,kBAAkB,CAAC,MAAwB,EAAE,KAAa,EAAE,MAAc,EAAE,KAAa,EAAE,UAAuB;QACtH,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;YAAE,OAAO;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC;QACpC,yFAAyF;QACzF,0FAA0F;QAC1F,sEAAsE;QACtE,IAAI,QAAQ,IAAK,QAAsC,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACjF,OAAO;QACX,CAAC;QACD,IAAI,CAAC;YACD,IAAI,CAAC,+BAA+B,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7C,MAAM,IAAI,KAAK,CAAC,WAAW,KAAK,8CAA8C,CAAC,CAAC;YACpF,CAAC;YACD,QAAQ,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC5E,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QACrG,CAAC;IACL,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,uBAAuB,CAAC,WAAmB;QACtD,OAAO,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IAC5D,CAAC;IAED;;;;;;;;OAQG;IACK,sCAAsC,CAAC,MAAwB;QACnE,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,0CAA0C;QACrF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,OAAO;QACX,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,KAAK,KAAK,IAAI,CAAC;QACtE,0FAA0F;QAC1F,kFAAkF;QAClF,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;YAC9C,OAAO;QACX,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB;eAC5B,IAAI,CAAC,aAA8C,CAAC,WAAW,CAAC;QACxE,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CACtC,mBAAmB,EACnB,qJAAqJ,EACrJ,IAAI,CAAC,iBAAiB,EACtB,mBAAmB,CAAC,OAAO,CAC9B,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,8BAA8B,CAAC,MAAc,EAAE,UAAsB;QAC9E,IAAI,CAAC;YACD,gCAAgC;YAChC,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAE/D,0CAA0C;YAC1C,MAAM,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CACpD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,yBAAyB,IAAI,CAAC,CAAC,QAAQ,KAAK,YAAY,CAC3E,CAAC;YAEF,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,wFAAwF,CAAC,CAAC;YAC9G,CAAC;YAED,qCAAqC;YACrC,MAAM,YAAY,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAExD,8BAA8B;YAC9B,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACpC,MAAM,CAAC,MAAM,GAAG,iBAAiB,CAAC;YAClC,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC;YAC7C,MAAM,CAAC,IAAI,GAAG,YAAY,CAAC;YAC3B,MAAM,CAAC,iBAAiB,GAAG,IAAI,CAAC,CAAC,gCAAgC;YAEjE,0DAA0D;YAC1D,MAAM,CAAC,oBAAoB,GAAG;gBAC1B;oBACI,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE,MAAM;iBAClB;aACJ,CAAC;YAEF,qBAAqB;YACrB,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;YACpC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAsB,MAAM,CAAC,CAAC;YAEvE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CAAC,+BAA+B,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;YAC1E,CAAC;YAED,uEAAuE;YACvE,0EAA0E;YAC1E,4CAA4C;YAC5C,IAAI,WAAuC,CAAC;YAC5C,IAAI,MAAM,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,aAAa,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBACvF,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;YAChC,CAAC;iBAAM,CAAC;gBACJ,WAAW,GAAG,iBAAiB,CAAsB,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;YAChH,CAAC;YACD,IAAI,CAAC,WAAW,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC/E,CAAC;YAED,6DAA6D;YAC7D,IAAI,WAAW,CAAC,WAAW,IAAI,WAAW,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChE,MAAM,OAAO,GAAG,WAAW,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;gBAC/C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC;oBAC1D,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;oBACtB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC;gBAE9B,OAAO;oBACH,WAAW;oBACX,eAAe,EAAE,WAAW,CAAC,sBAAsB;iBACtD,CAAC;YACN,CAAC;iBACI,IAAI,WAAW,CAAC,WAAW,KAAK,SAAS,IAAI,WAAW,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;gBACjF,gDAAgD;gBAChD,OAAO;oBACH,WAAW,EAAE,EAAE;oBACf,eAAe,EAAE,WAAW,CAAC,sBAAsB;iBACtD,CAAC;YACN,CAAC;iBACI,CAAC;gBACF,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAC/E,CAAC;QACL,CAAC;QACD,OAAO,CAAC,EAAE,CAAC;YACP,QAAQ,CAAC,CAAC,CAAC,CAAC;YACZ,MAAM,CAAC,CAAC;QACZ,CAAC;IACL,CAAC;IAED;;;OAGG;IACO,iBAAiB,CAAC,UAAsB;QAC9C,MAAM,cAAc,GAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACvD,MAAM,EAAE,GAAsB,IAAI,CAAC,aAA6C,CAAC;QACjF,MAAM,WAAW,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;QACjD,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;QAE9D,2BAA2B;QAC3B,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAChD,IAAI,GAAG,GAAW,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;YAC1C,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;gBAClB,GAAG,IAAI,aAAa,CAAC,CAAC,qBAAqB,GAAG,CAAC;YACnD,CAAC;YACD,OAAO,GAAG,CAAC;QACf,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEb,kCAAkC;QAClC,MAAM,uBAAuB,GAAG,IAAI,CAAC,4BAA4B,CAAC,UAAU,EAAE,EAAE,EAAE,cAAc,CAAC,CAAC;QAElG,qBAAqB;QACrB,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YACzD,OAAO,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;QAC/C,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEnB,4BAA4B;QAC5B,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC3E,OAAO,CAAC,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,WAAW,GAAG,GAAG,CAAC;QAC/C,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAEnB,OAAO;YACH,UAAU,EAAE,UAAU,CAAC,IAAI;YAC3B,QAAQ,EAAE,UAAU,CAAC,EAAE;YACvB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,iBAAiB;YACjB,uBAAuB,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,EAAE;YACjF,WAAW,EAAE,WAAW,EAAE,UAAU,IAAI,MAAM;YAC9C,WAAW;YACX,iBAAiB;SACpB,CAAC;IACN,CAAC;IAED;;OAEG;IACO,4BAA4B,CAAC,UAAsB,EAAE,EAAqB,EAAE,cAAwB;QAC1G,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAChG,MAAM,qBAAqB,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnH,+BAA+B;QAC/B,MAAM,aAAa,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAChD,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC;gBAClD,IAAI,CAAC,EAAE,CAAC;oBACJ,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACvB,OAAO,KAAK,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;wBACzD,OAAO,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC;oBAC1C,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAE,EAAE,CAAC;gBACpB,CAAC;YACL,CAAC;YACD,OAAO,EAAE,CAAC;QACd,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,2CAA2C;QAC3C,MAAM,mBAAmB,GAAG,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;YAC3D,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,IAAI,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBACjD,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;gBAChC,OAAO,KAAK,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;oBACzD,IAAI,GAAG,GAAW,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,IAAI,GAAG,CAAC;oBAC5C,IAAI,EAAE,CAAC,aAAa,EAAE,CAAC;wBACnB,GAAG,IAAI,aAAa,EAAE,CAAC,qBAAqB,GAAG,CAAC;oBACpD,CAAC;oBACD,OAAO,GAAG,CAAC;gBACf,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAE,EAAE,CAAC;YACpB,CAAC;YACD,OAAO,EAAE,CAAC;QACd,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,OAAO,CAAC,aAAa,EAAE,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrF,CAAC;CACJ,CAAA;AAhSY,sBAAsB;IADlC,aAAa,CAAC,UAAU,EAAE,gBAAgB,CAAC;GAC/B,sBAAsB,CAgSlC"}
1
+ {"version":3,"file":"MJUserViewEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJUserViewEntityServer.server.ts"],"names":[],"mappings":"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"}
@@ -134,6 +134,8 @@ export declare class MJVectorIndexEntityServer extends MJVectorIndexEntity {
134
134
  * second failure here must not replace the original diagnosis with a save error.
135
135
  */
136
136
  private recordProvisionState;
137
+ /** The `provisionState` recorded on `ProviderConfig`, or undefined when there is none or it cannot be read. */
138
+ private readProvisionState;
137
139
  /**
138
140
  * Merge the provisioning outcome into the existing `ProviderConfig` JSON bag, preserving any
139
141
  * driver-specific keys already there (e.g. Pinecone's `namespaceField`).
@@ -1 +1 @@
1
- {"version":3,"file":"MJVectorIndexEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJVectorIndexEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAmD,MAAM,sBAAsB,CAAC;AAEtH,OAAO,EAAE,mBAAmB,EAA0B,MAAM,+BAA+B,CAAC;AAoC5F;;;;;;;;;;;;;;GAcG;AACH,qBACa,yBAA0B,SAAQ,mBAAmB;IAC9D,oDAAoD;IACpD,gBAAuB,uBAAuB,SAAU;IACxD,iGAAiG;IACjG,gBAAuB,0BAA0B,SAAU;IAC3D,4GAA4G;IAC5G,gBAAuB,kBAAkB,QAAQ;IACjD,qHAAqH;IACrH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAqB;IAEjE;;;;;;OAMG;IACmB,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAazE;;OAEG;IACmB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAShD;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;;;;;;;;OASG;YACW,qBAAqB;IAkCnC;;;;;OAKG;YACW,wBAAwB;IAkDtC;;OAEG;YACW,uBAAuB;IAyBrC;;;OAGG;YACW,mBAAmB;IAgDjC;;;;;;;;;;;;;;;OAeG;YACW,iBAAiB;IAY/B;;;;OAIG;YACW,oBAAoB;IAqClC;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IASrB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAe1B;;;;;;;;;;;;OAYG;YACW,oBAAoB;IAiClC,OAAO,CAAC,uBAAuB;IAM/B,mEAAmE;IACnE,OAAO,CAAC,qBAAqB;IAM7B,oEAAoE;IACpE,OAAO,CAAC,kBAAkB;IAS1B;;;;;;OAMG;YACW,oBAAoB;IAelC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAuB9B"}
1
+ {"version":3,"file":"MJVectorIndexEntityServer.server.d.ts","sourceRoot":"","sources":["../../src/custom/MJVectorIndexEntityServer.server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAmD,MAAM,sBAAsB,CAAC;AAEtH,OAAO,EAAE,mBAAmB,EAA0B,MAAM,+BAA+B,CAAC;AA0C5F;;;;;;;;;;;;;;GAcG;AACH,qBACa,yBAA0B,SAAQ,mBAAmB;IAC9D,oDAAoD;IACpD,gBAAuB,uBAAuB,SAAU;IACxD,iGAAiG;IACjG,gBAAuB,0BAA0B,SAAU;IAC3D,4GAA4G;IAC5G,gBAAuB,kBAAkB,QAAQ;IACjD,qHAAqH;IACrH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAqB;IAEjE;;;;;;OAMG;IACmB,IAAI,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IAazE;;OAEG;IACmB,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;IAShD;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAoBzB;;;;;;;;;OASG;YACW,qBAAqB;IAmCnC;;;;;OAKG;YACW,wBAAwB;IA6DtC;;OAEG;YACW,uBAAuB;IA+BrC;;;OAGG;YACW,mBAAmB;IAgDjC;;;;;;;;;;;;;;;OAeG;YACW,iBAAiB;IAY/B;;;;OAIG;YACW,oBAAoB;IAqClC;;;;;;;OAOG;IACH,OAAO,CAAC,aAAa;IASrB;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAe1B;;;;;;;;;;;;OAYG;YACW,oBAAoB;IAiClC,OAAO,CAAC,uBAAuB;IAM/B,mEAAmE;IACnE,OAAO,CAAC,qBAAqB;IAM7B,oEAAoE;IACpE,OAAO,CAAC,kBAAkB;IAS1B;;;;;;OAMG;YACW,oBAAoB;IAelC,+GAA+G;IAC/G,OAAO,CAAC,kBAAkB;IAgB1B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAuB9B"}
@@ -124,6 +124,7 @@ let MJVectorIndexEntityServer = class MJVectorIndexEntityServer extends MJVector
124
124
  break;
125
125
  case 'unprovisioned':
126
126
  case 'not-applicable':
127
+ case 'adopted':
127
128
  LogStatus(`Vector index "${this.Name}": provisionState "${outcome.state}" (${outcome.reason ?? 'no detail'})`);
128
129
  break;
129
130
  }
@@ -135,6 +136,16 @@ let MJVectorIndexEntityServer = class MJVectorIndexEntityServer extends MJVector
135
136
  * Throws only when the driver throws or the call times out; the caller classifies both.
136
137
  */
137
138
  async provisionIndexInProvider() {
139
+ // A row created with ExternalID already set addresses an index that exists on the provider
140
+ // (an Open App's shipped index, or one made outside MJ). Creating one from Name instead would
141
+ // leave an empty index behind and point the row at it, away from the vectors it names.
142
+ const adoptedIndex = this.ExternalID?.trim();
143
+ if (adoptedIndex) {
144
+ return {
145
+ state: 'adopted',
146
+ reason: `ExternalID "${adoptedIndex}" names an existing provider index; nothing was created`,
147
+ };
148
+ }
138
149
  const vectorDB = await this.getVectorDBInstance();
139
150
  if (!vectorDB) {
140
151
  // getVectorDBInstance() has already logged the specific reason.
@@ -178,6 +189,11 @@ let MJVectorIndexEntityServer = class MJVectorIndexEntityServer extends MJVector
178
189
  * Delete the index from the vector database provider.
179
190
  */
180
191
  async deleteIndexFromProvider() {
192
+ if (this.readProvisionState() === 'adopted') {
193
+ // MJ never created this index, and other rows or apps may still use it.
194
+ LogStatus(`Vector index "${this.Name}" adopted an existing provider index; leaving it in place`);
195
+ return;
196
+ }
181
197
  const vectorDB = await this.getVectorDBInstance();
182
198
  if (!vectorDB) {
183
199
  LogError(`Cannot delete index: no VectorDB instance for database ${this.VectorDatabaseID}`);
@@ -424,6 +440,23 @@ let MJVectorIndexEntityServer = class MJVectorIndexEntityServer extends MJVector
424
440
  LogError(`Could not record provisioning state "${outcome.state}" on vector index "${this.Name}"`, undefined, error);
425
441
  }
426
442
  }
443
+ /** The `provisionState` recorded on `ProviderConfig`, or undefined when there is none or it cannot be read. */
444
+ readProvisionState() {
445
+ if (!this.ProviderConfig) {
446
+ return undefined;
447
+ }
448
+ try {
449
+ const parsed = JSON.parse(this.ProviderConfig);
450
+ if (parsed && typeof parsed === 'object' && !Array.isArray(parsed)) {
451
+ const state = parsed['provisionState'];
452
+ return typeof state === 'string' ? state : undefined;
453
+ }
454
+ }
455
+ catch {
456
+ // An unreadable ProviderConfig carries no provisioning state.
457
+ }
458
+ return undefined;
459
+ }
427
460
  /**
428
461
  * Merge the provisioning outcome into the existing `ProviderConfig` JSON bag, preserving any
429
462
  * driver-specific keys already there (e.g. Pinecone's `namespaceField`).
@@ -1 +1 @@
1
- {"version":3,"file":"MJVectorIndexEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJVectorIndexEntityServer.server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MJVectorIndexEntityServer.server.js","sourceRoot":"","sources":["../../src/custom/MJVectorIndexEntityServer.server.ts"],"names":[],"mappings":";;;;;;;AAAA,OAAO,EAAE,UAAU,EAAwC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AACtH,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAA0B,MAAM,+BAA+B,CAAC;AAC5F,OAAO,EAAE,YAAY,EAA2C,MAAM,6BAA6B,CAAC;AACpG,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAE9D,iEAAiE;AACjE,MAAM,aAAa,GAAwC,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;AAgCjG,uHAAuH;AACvH,MAAM,qBAAsB,SAAQ,KAAK;CAAG;AAE5C;;;;;;;;;;;;;;GAcG;AAEI,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,mBAAmB;;IAC9D,oDAAoD;aAC7B,4BAAuB,GAAG,MAAM,AAAT,CAAU;IACxD,iGAAiG;aAC1E,+BAA0B,GAAG,MAAM,AAAT,CAAU;IAC3D,4GAA4G;aACrF,uBAAkB,GAAG,IAAI,AAAP,CAAQ;IACjD,qHAAqH;aAC7F,yBAAoB,GAAG,iBAAiB,AAApB,CAAqB;IAEjE;;;;;;OAMG;IACa,KAAK,CAAC,IAAI,CAAC,OAA2B;QAClD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,KAAK,KAAK,CAAC;QACrC,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE7C,IAAI,UAAU,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,qBAAqB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBACzC,QAAQ,CAAC,2BAA2B,IAAI,CAAC,IAAI,yBAAyB,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9F,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACa,KAAK,CAAC,MAAM;QACxB,oFAAoF;QACpF,MAAM,IAAI,CAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACjD,QAAQ,CAAC,2BAA2B,IAAI,CAAC,IAAI,6DAA6D,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QAClI,CAAC,CAAC,CAAC;QAEH,OAAO,KAAK,CAAC,MAAM,EAAE,CAAC;IAC1B,CAAC;IAED;;;;OAIG;IACK,iBAAiB,CAAC,IAAY;QAClC,iGAAiG;QACjG,IAAI,SAAS,GAAG,IAAI;aACf,WAAW,EAAE;aACb,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC;aACvB,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;aAC1B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAO,4BAA4B;aACtD,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAK,gCAAgC;QAEhE,IAAI,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACxB,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CAAC,eAAe,IAAI,kGAAkG,CAAC,CAAC;QAC3I,CAAC;QAED,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,qBAAqB;QAC/B,IAAI,OAAwB,CAAC;QAC7B,IAAI,CAAC;YACD,OAAO,GAAG,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,MAAM,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACtE,0FAA0F;YAC1F,4EAA4E;YAC5E,OAAO,GAAG,EAAE,KAAK,EAAE,KAAK,YAAY,qBAAqB,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;QACjG,CAAC;QAED,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAEzC,QAAQ,OAAO,CAAC,KAAK,EAAE,CAAC;YACpB,KAAK,QAAQ;gBACT,QAAQ,CACJ,iBAAiB,IAAI,CAAC,IAAI,qDAAqD;oBAC/E,GAAG,OAAO,CAAC,MAAM,IAAI,iDAAiD,IAAI;oBAC1E,2GAA2G,CAC9G,CAAC;gBACF,MAAM;YACV,KAAK,WAAW;gBACZ,QAAQ,CACJ,iBAAiB,IAAI,CAAC,IAAI,MAAM,OAAO,CAAC,MAAM,IAAI,qCAAqC,IAAI;oBAC3F,oDAAoD,CACvD,CAAC;gBACF,MAAM;YACV,KAAK,eAAe,CAAC;YACrB,KAAK,gBAAgB,CAAC;YACtB,KAAK,SAAS;gBACV,SAAS,CAAC,iBAAiB,IAAI,CAAC,IAAI,sBAAsB,OAAO,CAAC,KAAK,MAAM,OAAO,CAAC,MAAM,IAAI,WAAW,GAAG,CAAC,CAAC;gBAC/G,MAAM;QACd,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACK,KAAK,CAAC,wBAAwB;QAClC,2FAA2F;QAC3F,8FAA8F;QAC9F,uFAAuF;QACvF,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC;QAC7C,IAAI,YAAY,EAAE,CAAC;YACf,OAAO;gBACH,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,eAAe,YAAY,yDAAyD;aAC/F,CAAC;QACN,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,gEAAgE;YAChE,OAAO;gBACH,KAAK,EAAE,eAAe;gBACtB,MAAM,EAAE,oEAAoE,IAAI,CAAC,gBAAgB,kBAAkB;aACtH,CAAC;QACN,CAAC;QAED,IAAI,QAAQ,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YACpC,OAAO;gBACH,KAAK,EAAE,gBAAgB;gBACvB,MAAM,EAAE,8FAA8F;aACzG,CAAC;QACN,CAAC;QAED,0FAA0F;QAC1F,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,aAAa,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9B,SAAS,CAAC,8BAA8B,IAAI,CAAC,IAAI,SAAS,aAAa,wCAAwC,CAAC,CAAC;QACrH,CAAC;QAED,MAAM,MAAM,GAAsB;YAC9B,EAAE,EAAE,aAAa;YACjB,SAAS,EAAE,MAAM,IAAI,CAAC,iBAAiB,EAAE;YACzC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE;YAC5B,gBAAgB,EAAE;gBACd,UAAU,EAAE;oBACR,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,WAAW;iBACtB;aACJ;SACJ,CAAC;QAEF,SAAS,CAAC,mBAAmB,aAAa,4BAA4B,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,2BAAyB,CAAC,WAAW,CACtD,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,EAC5B,2BAAyB,CAAC,uBAAuB,EACjD,gBAAgB,aAAa,IAAI,CACpC,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAClB,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,IAAI,iDAAiD,EAAE,CAAC;QAC5G,CAAC;QAED,SAAS,CAAC,UAAU,aAAa,oCAAoC,CAAC,CAAC;QACvE,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;QACpE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IACpC,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,uBAAuB;QACjC,IAAI,IAAI,CAAC,kBAAkB,EAAE,KAAK,SAAS,EAAE,CAAC;YAC1C,wEAAwE;YACxE,SAAS,CAAC,iBAAiB,IAAI,CAAC,IAAI,2DAA2D,CAAC,CAAC;YACjG,OAAO;QACX,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAClD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,CAAC,0DAA0D,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;YAC5F,OAAO;QACX,CAAC;QAED,IAAI,QAAQ,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;YACpC,kFAAkF;YAClF,uDAAuD;YACvD,OAAO;QACX,CAAC;QAED,+FAA+F;QAC/F,6FAA6F;QAC7F,MAAM,iBAAiB,GAAG,YAAY,CAAC,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAC3E,SAAS,CAAC,mBAAmB,iBAAiB,8BAA8B,CAAC,CAAC;QAC9E,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACrE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,SAAS,CAAC,UAAU,iBAAiB,yBAAyB,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACJ,QAAQ,CAAC,2CAA2C,iBAAiB,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QACjG,CAAC;IACL,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,mBAAmB;QAC7B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,EAAE,GAAG,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,OAAO,CAAyB;YACpD,UAAU,EAAE,sBAAsB;YAClC,WAAW,EAAE,OAAO,IAAI,CAAC,gBAAgB,GAAG;YAC5C,UAAU,EAAE,eAAe;SAC9B,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE5B,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjD,QAAQ,CAAC,0BAA0B,IAAI,CAAC,gBAAgB,YAAY,CAAC,CAAC;YACtE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,CAAC,mBAAmB,QAAQ,CAAC,IAAI,8BAA8B,CAAC,CAAC;YACzE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,4FAA4F;QAC5F,sFAAsF;QACtF,4FAA4F;QAC5F,4FAA4F;QAC5F,gEAAgE;QAChE,4FAA4F;QAC5F,mFAAmF;QACnF,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,cAAc,CAC1D,YAAY,EAAE,QAAQ,EAAE,MAAM,IAAI,WAAW,CAChD,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACZ,QAAQ,CAAC,4CAA4C,QAAQ,GAAG,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,QAAQ,CAAC,oBAAoB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAClD,IAAI,CAAC,QAAQ,CAAC,sBAAsB,IAAI,QAAQ,CAAC,cAAc,IAAI,CAAC,MAAM,EAAE,CAAC;YACzE,QAAQ,CAAC,4CAA4C,QAAQ,GAAG,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACK,KAAK,CAAC,iBAAiB;QAC3B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,UAAU,CAAC;QAC3B,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QACjD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YAClB,QAAQ,CAAC,iBAAiB,IAAI,CAAC,IAAI,8EAA8E,2BAAyB,CAAC,kBAAkB,uEAAuE,CAAC,CAAC;YACtO,OAAO,2BAAyB,CAAC,kBAAkB,CAAC;QACxD,CAAC;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,oBAAoB;QAC9B,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACzB,QAAQ,CAAC,iBAAiB,IAAI,CAAC,IAAI,6DAA6D,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC3B,QAAQ,CAAC,iBAAiB,IAAI,CAAC,IAAI,yDAAyD,CAAC,CAAC;YAC9F,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,2BAAyB,CAAC,WAAW,CACtD,IAAI,iBAAiB,EAAE,CAAC,YAAY,CAAC;gBACjC,KAAK,EAAE,CAAC,2BAAyB,CAAC,oBAAoB,CAAC;gBACvD,OAAO,EAAE,IAAI,CAAC,gBAAgB;gBAC9B,WAAW,EAAE,IAAI,CAAC,kBAAkB;gBACpC,kFAAkF;gBAClF,6EAA6E;gBAC7E,QAAQ,EAAE,IAAI,CAAC,aAA6C;gBAC5D,aAAa,EAAE,IAAI;gBACnB,WAAW,EAAE,iBAAiB,IAAI,CAAC,IAAI,mBAAmB;aAC7D,CAAC,EACF,2BAAyB,CAAC,0BAA0B,EACpD,qCAAqC,IAAI,CAAC,IAAI,GAAG,CACpD,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACb,QAAQ,CAAC,qCAAqC,IAAI,CAAC,IAAI,yBAAyB,MAAM,CAAC,YAAY,IAAI,cAAc,EAAE,CAAC,CAAC;gBACzH,OAAO,IAAI,CAAC;YAChB,CAAC;YACD,SAAS,CAAC,iBAAiB,IAAI,CAAC,IAAI,sBAAsB,KAAK,uBAAuB,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;YACnI,OAAO,KAAK,CAAC;QACjB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,QAAQ,CAAC,qCAAqC,IAAI,CAAC,IAAI,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;YACrF,OAAO,IAAI,CAAC;QAChB,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACK,aAAa;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC;QACtD,IAAI,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;YACnB,QAAQ,CAAC,iBAAiB,IAAI,CAAC,IAAI,sCAAsC,IAAI,CAAC,MAAM,iDAAiD,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtK,CAAC;QACD,OAAO,KAAK,IAAI,QAAQ,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACK,MAAM,CAAC,WAAW,CAAI,IAAoB,EAAE,SAAiB,EAAE,KAAa;QAChF,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC1B,MAAM,CAAC,IAAI,qBAAqB,CAC5B,GAAG,KAAK,oBAAoB,SAAS,iDAAiD;oBACtF,2DAA2D,CAC9D,CAAC,CAAC;YACP,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACtB,CAAC,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EACnD,CAAC,KAAK,EAAE,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CACrD,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;OAYG;IACK,KAAK,CAAC,oBAAoB,CAC9B,cAAmD,EACnD,MAAyB,EACzB,aAAqB;QAErB,IAAI,CAAC;YACD,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC,0CAA0C;YAC3E,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC;YACjF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC;YAEvE,8GAA8G;YAC9G,MAAM,KAAK,GAA4B,EAAE,CAAC;YAC1C,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;gBAC1B,KAAK,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC;YAC5C,CAAC;YACD,IAAI,cAAc,IAAI,OAAO,cAAc,KAAK,QAAQ,EAAE,CAAC;gBACvD,wDAAwD;gBACxD,IAAI,MAAM,IAAI,cAAc;oBAAE,KAAK,CAAC,MAAM,CAAC,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;gBACrE,IAAI,QAAQ,IAAI,cAAc;oBAAE,KAAK,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,KAAK,CAAC,CAAC;YAEhF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,KAAK,EAAE,CAAC;gBACR,SAAS,CAAC,sCAAsC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;YAClE,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,gDAAgD,CAAC,CAAC,CAAC;YAClJ,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,aAAa,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACpI,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,aAAqB,EAAE,MAAc;QACjE,OAAO,iBAAiB,IAAI,CAAC,IAAI,qDAAqD,aAAa,aAAa;YAC5G,8DAA8D,MAAM,oCAAoC;YACxG,+CAA+C,aAAa,sBAAsB,CAAC;IAC3F,CAAC;IAED,mEAAmE;IAC3D,qBAAqB,CAAC,cAAmD;QAC7E,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC,WAAW,CAAC,CAAC;QAC1C,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QAC1F,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,CAAC;IAED,oEAAoE;IAC5D,kBAAkB,CAAC,cAAmD;QAC1E,MAAM,GAAG,GAAG,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,IAAI,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACK,KAAK,CAAC,oBAAoB,CAAC,OAAwB;QACvD,IAAI,OAAO,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;YAClC,OAAO,CAAC,4EAA4E;QACxF,CAAC;QACD,IAAI,CAAC;YACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACT,QAAQ,CAAC,wCAAwC,OAAO,CAAC,KAAK,sBAAsB,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,YAAY,EAAE,eAAe,IAAI,qBAAqB,EAAE,CAAC,CAAC;YACtK,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,QAAQ,CAAC,wCAAwC,OAAO,CAAC,KAAK,sBAAsB,IAAI,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;QACxH,CAAC;IACL,CAAC;IAED,+GAA+G;IACvG,kBAAkB;QACtB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACrB,CAAC;QACD,IAAI,CAAC;YACD,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACxD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjE,MAAM,KAAK,GAAI,MAAkC,CAAC,gBAAgB,CAAC,CAAC;gBACpE,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YACzD,CAAC;QACL,CAAC;QAAC,MAAM,CAAC;YACL,8DAA8D;QAClE,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,OAAwB,EAAE,KAA+B;QACjF,IAAI,QAAQ,GAA4B,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACtB,IAAI,CAAC;gBACD,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBACxD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjE,QAAQ,GAAG,MAAiC,CAAC;gBACjD,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACL,0EAA0E;gBAC1E,QAAQ,CAAC,iBAAiB,IAAI,CAAC,IAAI,4DAA4D,CAAC,CAAC;YACrG,CAAC;QACL,CAAC;QACD,MAAM,MAAM,GAA4B,EAAE,GAAG,QAAQ,EAAE,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC;QAC1E,MAAM,CAAC,gBAAgB,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;QACzC,MAAM,CAAC,oBAAoB,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACxD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,CAAC,kBAAkB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;QAChD,CAAC;aAAM,CAAC;YACJ,OAAO,MAAM,CAAC,kBAAkB,CAAC,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;;AA1fQ,yBAAyB;IADrC,aAAa,CAAC,UAAU,EAAE,oBAAoB,CAAC;GACnC,yBAAyB,CA2frC"}
@@ -0,0 +1,42 @@
1
+ import { ValidationErrorInfo, type TransactionVariable } from '@memberjunction/core';
2
+ /** The slice of a transaction group the guard reads: its variables. */
3
+ export interface GuardedTransactionGroup {
4
+ Variables: ReadonlyArray<Pick<TransactionVariable, 'EntityObject' | 'Type' | 'FieldName'>>;
5
+ }
6
+ /**
7
+ * The slice of a BaseEntity the guard reads: whether the row exists yet, who is saving it, its fields, and the
8
+ * transaction group it is saved in (if any).
9
+ */
10
+ export interface OwnershipKeyGuardTarget {
11
+ IsSaved: boolean;
12
+ ContextCurrentUser?: {
13
+ IsMagicLinkAnonymous?: boolean;
14
+ } | null;
15
+ GetFieldByName(name: string): {
16
+ Dirty: boolean;
17
+ } | null | undefined;
18
+ TransactionGroup?: GuardedTransactionGroup | null;
19
+ }
20
+ /**
21
+ * Whether a `'Use'` transaction variable will set one of `fieldNames` on `target` (case-insensitive). Such a variable
22
+ * sets its field at `Submit()`, after `Validate()` has passed, so a check that reads `Dirty` never sees the value
23
+ * that is written. `ExecuteTransactionGroup` registers every variable before any item is saved, which is what lets a
24
+ * `Validate()` see them. The same rule guards `MJ: Conversation Details` (`fieldSetByTransactionVariable`).
25
+ */
26
+ export declare function IsSetByTransactionVariable(target: Pick<OwnershipKeyGuardTarget, 'TransactionGroup'>, fieldNames: readonly string[]): boolean;
27
+ /**
28
+ * Refuses an anonymous visitor changing an anonymous-session ownership key on an EXISTING row (#4931).
29
+ *
30
+ * An anonymous visitor's realtime session is owned through `AIAgentSession.ConversationID` →
31
+ * `Conversation.ExternalID` (see `AuthorizeSessionAccess` in `@memberjunction/server`). Every anonymous
32
+ * visitor shares one Anonymous user, so under a role whose row-level security filters by `UserID` (the
33
+ * stock `UI` role) one visitor can load another visitor's row and would otherwise rewrite either key to
34
+ * its own identity and pass the ownership gate. The key is set once, when the row is created — by
35
+ * `SessionManager` for a server-created session and its conversation, and by the web widget for the
36
+ * conversation it creates — so an insert is allowed and only a change to a saved row is refused.
37
+ * Named callers are unaffected.
38
+ *
39
+ * @returns a refusal to push into the entity's validation result, or null when the save may proceed.
40
+ */
41
+ export declare function CheckAnonymousOwnershipKeyChange(target: OwnershipKeyGuardTarget, fieldName: string): ValidationErrorInfo | null;
42
+ //# sourceMappingURL=anonymousOwnershipKeyGuard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anonymousOwnershipKeyGuard.d.ts","sourceRoot":"","sources":["../../src/custom/anonymousOwnershipKeyGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAuB,KAAK,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAE1G,uEAAuE;AACvE,MAAM,WAAW,uBAAuB;IACpC,SAAS,EAAE,aAAa,CAAC,IAAI,CAAC,mBAAmB,EAAE,cAAc,GAAG,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;CAC9F;AAED;;;GAGG;AACH,MAAM,WAAW,uBAAuB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,kBAAkB,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IACpE,gBAAgB,CAAC,EAAE,uBAAuB,GAAG,IAAI,CAAC;CACrD;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,IAAI,CAAC,uBAAuB,EAAE,kBAAkB,CAAC,EAAE,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAK5I;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,uBAAuB,EAAE,SAAS,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CAc/H"}
@@ -0,0 +1,36 @@
1
+ import { ValidationErrorInfo, ValidationErrorType } from '@memberjunction/core';
2
+ /**
3
+ * Whether a `'Use'` transaction variable will set one of `fieldNames` on `target` (case-insensitive). Such a variable
4
+ * sets its field at `Submit()`, after `Validate()` has passed, so a check that reads `Dirty` never sees the value
5
+ * that is written. `ExecuteTransactionGroup` registers every variable before any item is saved, which is what lets a
6
+ * `Validate()` see them. The same rule guards `MJ: Conversation Details` (`fieldSetByTransactionVariable`).
7
+ */
8
+ export function IsSetByTransactionVariable(target, fieldNames) {
9
+ const wanted = fieldNames.map((n) => n.toLowerCase());
10
+ return !!target.TransactionGroup?.Variables.some((v) => v.EntityObject === target && v.Type === 'Use' && wanted.includes(v.FieldName.trim().toLowerCase()));
11
+ }
12
+ /**
13
+ * Refuses an anonymous visitor changing an anonymous-session ownership key on an EXISTING row (#4931).
14
+ *
15
+ * An anonymous visitor's realtime session is owned through `AIAgentSession.ConversationID` →
16
+ * `Conversation.ExternalID` (see `AuthorizeSessionAccess` in `@memberjunction/server`). Every anonymous
17
+ * visitor shares one Anonymous user, so under a role whose row-level security filters by `UserID` (the
18
+ * stock `UI` role) one visitor can load another visitor's row and would otherwise rewrite either key to
19
+ * its own identity and pass the ownership gate. The key is set once, when the row is created — by
20
+ * `SessionManager` for a server-created session and its conversation, and by the web widget for the
21
+ * conversation it creates — so an insert is allowed and only a change to a saved row is refused.
22
+ * Named callers are unaffected.
23
+ *
24
+ * @returns a refusal to push into the entity's validation result, or null when the save may proceed.
25
+ */
26
+ export function CheckAnonymousOwnershipKeyChange(target, fieldName) {
27
+ if (!target.IsSaved || !target.ContextCurrentUser?.IsMagicLinkAnonymous) {
28
+ return null;
29
+ }
30
+ // `ID` too: a variable that sets it re-points the update at another row, which then takes this row's key.
31
+ if (!target.GetFieldByName(fieldName)?.Dirty && !IsSetByTransactionVariable(target, [fieldName, 'ID'])) {
32
+ return null;
33
+ }
34
+ return new ValidationErrorInfo(fieldName, `${fieldName} identifies who owns an anonymous realtime session and cannot be changed by an anonymous visitor.`, null, ValidationErrorType.Failure);
35
+ }
36
+ //# sourceMappingURL=anonymousOwnershipKeyGuard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anonymousOwnershipKeyGuard.js","sourceRoot":"","sources":["../../src/custom/anonymousOwnershipKeyGuard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAA4B,MAAM,sBAAsB,CAAC;AAkB1G;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,MAAyD,EAAE,UAA6B;IAC/H,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;IACtD,OAAO,CAAC,CAAC,MAAM,CAAC,gBAAgB,EAAE,SAAS,CAAC,IAAI,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAC5G,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gCAAgC,CAAC,MAA+B,EAAE,SAAiB;IAC/F,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,oBAAoB,EAAE,CAAC;QACtE,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,0GAA0G;IAC1G,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,EAAE,KAAK,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;QACrG,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,IAAI,mBAAmB,CAC1B,SAAS,EACT,GAAG,SAAS,mGAAmG,EAC/G,IAAI,EACJ,mBAAmB,CAAC,OAAO,CAC9B,CAAC;AACN,CAAC"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * Server-side approval stamping for queries, user views, dashboards and components.
3
+ *
4
+ * Approving is a server act. A save that moves a record's status to Approved records the context
5
+ * user as the approver, the time, and — once the definition is stored — the fingerprint of that
6
+ * definition (`approvals.ts` in `@memberjunction/core-entities`). Values a client sends for those
7
+ * three columns are never stored. Who may approve is whoever may update the record today.
8
+ */
9
+ import { BaseEntity, BaseEntityResult } from '@memberjunction/core';
10
+ /** The approval columns every approvable entity carries. */
11
+ export interface ApprovalColumns {
12
+ ApprovedByUserID: string | null;
13
+ ApprovedAt: Date | null;
14
+ ApprovedFingerprint: string | null;
15
+ }
16
+ /** The status column that carries the approval: `Status` on queries, `ApprovalStatus` on the others. */
17
+ export type ApprovalStatusField = 'Status' | 'ApprovalStatus';
18
+ /**
19
+ * Applies the approval rules to a record about to be saved, and says whether this save approves it.
20
+ *
21
+ * - The save approves when the status becomes Approved and the stored status is not Approved (or
22
+ * the record is new). The approver is the context user and the time is now; the fingerprint is
23
+ * cleared until the caller stamps it from the definition as stored.
24
+ * - On any other save the three columns keep their stored values (none on a create), so values a
25
+ * client sent are ignored. Moving away from Approved clears nothing: the approval stays as history
26
+ * and stops being current because the status is no longer Approved.
27
+ *
28
+ * The stored values are read from the database rather than the record's old values, which a client
29
+ * can supply on an update.
30
+ *
31
+ * @returns true when this save approves the record
32
+ * @throws when the stored row cannot be read, or when approving with no context user
33
+ */
34
+ export declare function ApplyApprovalRulesAsync(record: BaseEntity & ApprovalColumns, statusField: ApprovalStatusField, newStatus: string | null): Promise<boolean>;
35
+ /** A failed save result for a save refused before anything was written. */
36
+ export declare function ApprovalRefusalResult(record: BaseEntity, error: unknown): BaseEntityResult;
37
+ //# sourceMappingURL=approvalStamp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approvalStamp.d.ts","sourceRoot":"","sources":["../../src/custom/approvalStamp.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAEpE,4DAA4D;AAC5D,MAAM,WAAW,eAAe;IAC5B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACtC;AAED,wGAAwG;AACxG,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,gBAAgB,CAAC;AAS9D;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CACzC,MAAM,EAAE,UAAU,GAAG,eAAe,EACpC,WAAW,EAAE,mBAAmB,EAChC,SAAS,EAAE,MAAM,GAAG,IAAI,GACzB,OAAO,CAAC,OAAO,CAAC,CAgBlB;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAQ1F"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Server-side approval stamping for queries, user views, dashboards and components.
3
+ *
4
+ * Approving is a server act. A save that moves a record's status to Approved records the context
5
+ * user as the approver, the time, and — once the definition is stored — the fingerprint of that
6
+ * definition (`approvals.ts` in `@memberjunction/core-entities`). Values a client sends for those
7
+ * three columns are never stored. Who may approve is whoever may update the record today.
8
+ */
9
+ import { BaseEntityResult } from '@memberjunction/core';
10
+ /**
11
+ * Applies the approval rules to a record about to be saved, and says whether this save approves it.
12
+ *
13
+ * - The save approves when the status becomes Approved and the stored status is not Approved (or
14
+ * the record is new). The approver is the context user and the time is now; the fingerprint is
15
+ * cleared until the caller stamps it from the definition as stored.
16
+ * - On any other save the three columns keep their stored values (none on a create), so values a
17
+ * client sent are ignored. Moving away from Approved clears nothing: the approval stays as history
18
+ * and stops being current because the status is no longer Approved.
19
+ *
20
+ * The stored values are read from the database rather than the record's old values, which a client
21
+ * can supply on an update.
22
+ *
23
+ * @returns true when this save approves the record
24
+ * @throws when the stored row cannot be read, or when approving with no context user
25
+ */
26
+ export async function ApplyApprovalRulesAsync(record, statusField, newStatus) {
27
+ const stored = record.IsSaved ? await readStoredApproval(record, statusField) : null;
28
+ if (newStatus === 'Approved' && stored?.[statusField] !== 'Approved') {
29
+ const user = record.ContextCurrentUser;
30
+ if (!user?.ID) {
31
+ throw new Error('Approving needs a context user: the approver is recorded from it.');
32
+ }
33
+ record.ApprovedByUserID = user.ID;
34
+ record.ApprovedAt = new Date();
35
+ record.ApprovedFingerprint = null;
36
+ return true;
37
+ }
38
+ record.ApprovedByUserID = stored?.ApprovedByUserID ?? null;
39
+ record.ApprovedAt = stored?.ApprovedAt ? new Date(stored.ApprovedAt) : null;
40
+ record.ApprovedFingerprint = stored?.ApprovedFingerprint ?? null;
41
+ return false;
42
+ }
43
+ /** A failed save result for a save refused before anything was written. */
44
+ export function ApprovalRefusalResult(record, error) {
45
+ const result = new BaseEntityResult();
46
+ result.Success = false;
47
+ result.Type = record.IsSaved ? 'update' : 'create';
48
+ result.Message = error instanceof Error ? error.message : String(error);
49
+ result.StartedAt = new Date();
50
+ result.EndedAt = new Date();
51
+ return result;
52
+ }
53
+ /** Reads the stored status and approval columns, bypassing every cache. */
54
+ async function readStoredApproval(record, statusField) {
55
+ const result = await record.RunViewProviderToUse.RunView({
56
+ EntityName: record.EntityInfo.Name,
57
+ ExtraFilter: record.PrimaryKey.ToWhereClause(),
58
+ Fields: [statusField, 'ApprovedByUserID', 'ApprovedAt', 'ApprovedFingerprint'],
59
+ ResultType: 'simple',
60
+ BypassCache: true
61
+ }, record.ContextCurrentUser);
62
+ if (!result.Success || !result.Results?.length) {
63
+ throw new Error(`Could not read the stored approval of ${record.EntityInfo.Name} ${record.PrimaryKey.ToString()}: ${result.ErrorMessage || 'record not found'}`);
64
+ }
65
+ return result.Results[0];
66
+ }
67
+ //# sourceMappingURL=approvalStamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approvalStamp.js","sourceRoot":"","sources":["../../src/custom/approvalStamp.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAc,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAmBpE;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CACzC,MAAoC,EACpC,WAAgC,EAChC,SAAwB;IAExB,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACrF,IAAI,SAAS,KAAK,UAAU,IAAI,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,UAAU,EAAE,CAAC;QACnE,MAAM,IAAI,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACzF,CAAC;QACD,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;QAC/B,MAAM,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAClC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,CAAC,gBAAgB,GAAG,MAAM,EAAE,gBAAgB,IAAI,IAAI,CAAC;IAC3D,MAAM,CAAC,UAAU,GAAG,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,MAAM,CAAC,mBAAmB,GAAG,MAAM,EAAE,mBAAmB,IAAI,IAAI,CAAC;IACjE,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,MAAkB,EAAE,KAAc;IACpE,MAAM,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;IACtC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;IACnD,MAAM,CAAC,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACxE,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;IAC9B,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC;AAClB,CAAC;AAED,2EAA2E;AAC3E,KAAK,UAAU,kBAAkB,CAAC,MAAkB,EAAE,WAAgC;IAClF,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,OAAO,CAAoB;QACxE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,IAAI;QAClC,WAAW,EAAE,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE;QAC9C,MAAM,EAAE,CAAC,WAAW,EAAE,kBAAkB,EAAE,YAAY,EAAE,qBAAqB,CAAC;QAC9E,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,IAAI;KACpB,EAAE,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC9B,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CAAC,yCAAyC,MAAM,CAAC,UAAU,CAAC,IAAI,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,KAAK,MAAM,CAAC,YAAY,IAAI,kBAAkB,EAAE,CAAC,CAAC;IACrK,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { FieldPermissionAccess, FieldPermissionRuleVerbs } from '@memberjunction/core';
2
+ /**
3
+ * Case-insensitive handling of `MJ: Entity Field Permissions` Access values for the server-side
4
+ * guards.
5
+ *
6
+ * The Access columns' CHECK constraint runs under the database's case-insensitive collation, so
7
+ * `'deny'`, `'ALLOW'` and `' No Access '` all store. The runtime aggregation
8
+ * (`EntityFieldInfo.AggregateFieldRulesForUser`) folds case and trims, so a stored `'deny'` is
9
+ * ENFORCED as a Deny. A guard that compares with `===` therefore reads that same row as harmless —
10
+ * which is how a restriction slips past a check written to refuse it. Every guard must answer the
11
+ * question the way enforcement does, and these helpers are how it does.
12
+ */
13
+ /** The three Access columns of a rule, in a fixed order. */
14
+ export declare const FieldPermissionAccessVerbs: readonly ["ReadAccess", "UpdateAccess", "CreateAccess"];
15
+ /**
16
+ * The canonical value-list spelling of an Access value, or null when it is not one of the three
17
+ * values under any casing or surrounding whitespace.
18
+ */
19
+ export declare function NormalizeFieldPermissionAccess(value: string | null | undefined): FieldPermissionAccess | null;
20
+ /** True when `value` means `expected`, compared the way enforcement compares. */
21
+ export declare function FieldPermissionAccessIs(value: string | null | undefined, expected: FieldPermissionAccess): boolean;
22
+ /**
23
+ * True when a single rule takes access away — a `Deny` on any verb, under any spelling.
24
+ *
25
+ * Kept for the guards that already import it; it is `IsRestrictingFieldRule` from
26
+ * `@memberjunction/core`, which compares case-insensitively so it agrees with the aggregation.
27
+ * Like that function it judges ONE rule: whether a change restricts a user is a property of the
28
+ * projected aggregate across their roles.
29
+ */
30
+ export declare function IsRestrictingFieldRuleAnyCase(rule: FieldPermissionRuleVerbs | null | undefined): boolean;
31
+ //# sourceMappingURL=fieldPermissionAccess.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fieldPermissionAccess.d.ts","sourceRoot":"","sources":["../../src/custom/fieldPermissionAccess.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,wBAAwB,EAA0B,MAAM,sBAAsB,CAAC;AAE/G;;;;;;;;;;GAUG;AAEH,4DAA4D;AAC5D,eAAO,MAAM,0BAA0B,yDAA0D,CAAC;AAMlG;;;GAGG;AACH,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,qBAAqB,GAAG,IAAI,CAE7G;AAED,iFAAiF;AACjF,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,QAAQ,EAAE,qBAAqB,GAAG,OAAO,CAElH;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,wBAAwB,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAExG"}