@memberjunction/core-entities 6.1.0-edge.1 → 6.1.0-edge.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"MJDashboardEntityExtended.d.ts","sourceRoot":"","sources":["../../src/custom/MJDashboardEntityExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,mBAAmB,EAA+B,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAsC,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGnE,qBACa,yBAA0B,SAAQ,iBAAiB;IACrD,SAAS,IAAI,OAAO;IA4B3B;;;;OAIG;IACa,QAAQ,IAAI,gBAAgB;IAmC5C;;;OAGG;IACmB,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBhF"}
1
+ {"version":3,"file":"MJDashboardEntityExtended.d.ts","sourceRoot":"","sources":["../../src/custom/MJDashboardEntityExtended.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,mBAAmB,EAA+B,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAkD,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAGnE,qBACa,yBAA0B,SAAQ,iBAAiB;IACrD,SAAS,IAAI,OAAO;IA4B3B;;;;OAIG;IACa,QAAQ,IAAI,gBAAgB;IAkD5C;;;OAGG;IACmB,MAAM,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAAC,OAAO,CAAC;CAoBhF"}
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { BaseEntity, LogError } from "@memberjunction/core";
8
- import { RegisterClass, ValidationErrorInfo } from "@memberjunction/global";
8
+ import { RegisterClass, UUIDsEqual, ValidationErrorInfo } from "@memberjunction/global";
9
9
  import { MJDashboardEntity } from "../generated/entity_subclasses.js";
10
10
  import { DashboardEngine } from "../engines/dashboards.js";
11
11
  let MJDashboardEntityExtended = class MJDashboardEntityExtended extends MJDashboardEntity {
@@ -52,7 +52,21 @@ let MJDashboardEntityExtended = class MJDashboardEntityExtended extends MJDashbo
52
52
  // For existing records (not new), check edit permission
53
53
  if (this.IsSaved) {
54
54
  const permissions = DashboardEngine.Instance.GetDashboardPermissions(this.ID, currentUser.ID);
55
- if (!permissions.CanEdit) {
55
+ // An unloaded engine is not a permission decision. GetDashboardPermissions resolves
56
+ // against `_dashboards`, and a dashboard it cannot find returns "no permissions" — which
57
+ // is indistinguishable from a genuine denial. In a process that never configures the
58
+ // engine (a CLI task, where the 14 engines are deferred to first use), that array is
59
+ // empty, so EVERY dashboard save is refused, including the owner's own.
60
+ //
61
+ // Ownership does not need the cache to be answered: the row carries UserID. Falling back
62
+ // to it keeps the owner able to save while leaving every real denial intact — a loaded
63
+ // engine still decides, and a non-owner is still refused either way.
64
+ //
65
+ // Found by `mj sync push` on PostgreSQL, where this record is dirty and therefore
66
+ // reaches Validate(); on SQL Server the same record is unchanged, so Save() short-
67
+ // circuits and the defect stays hidden.
68
+ const ownsRecord = !DashboardEngine.Instance.Loaded && UUIDsEqual(this.UserID, currentUser.ID);
69
+ if (!permissions.CanEdit && !ownsRecord) {
56
70
  result.Success = false;
57
71
  result.Errors.push(new ValidationErrorInfo('Permission', 'You do not have permission to edit this dashboard', this.ID));
58
72
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MJDashboardEntityExtended.js","sourceRoot":"","sources":["../../src/custom/MJDashboardEntityExtended.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAA0C,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAoB,MAAM,wBAAwB,CAAC;AAC9F,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGjD,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,iBAAiB;IACrD,SAAS;QACZ,IAAG,CAAC;YACA,KAAK,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,oBAAoB,GAAG;gBACzB,OAAO,EAAE,CAAC;gBACV,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,EAAE;aACZ,CAAA;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YAExC,MAAM,EAAE,GAAG,IAAI,CAAC,aAA6C,CAAC;YAC9D,IAAG,EAAE,CAAC,WAAW,EAAC,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAM,KAAK,EAAE,CAAC;YACV,QAAQ,CAAC,sBAAsB,CAAC,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACa,QAAQ;QACpB,4BAA4B;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEhC,sCAAsC;QACtC,MAAM,EAAE,GAAI,IAAI,CAAC,aAAyC,CAAA;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,WAAW,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CACtC,YAAY,EACZ,2CAA2C,EAC3C,IAAI,CACP,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;YAE9F,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CACtC,YAAY,EACZ,mDAAmD,EACnD,IAAI,CAAC,EAAE,CACV,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACa,KAAK,CAAC,MAAM,CAAC,OAA6B;QACtD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAyC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,WAAW,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,QAAQ,CAAC,iDAAiD,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAE9F,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YACzB,QAAQ,CAAC,QAAQ,WAAW,CAAC,EAAE,iDAAiD,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3F,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,0CAA0C;QAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACJ,CAAA;AA7FY,yBAAyB;IADrC,aAAa,CAAC,UAAU,EAAE,gBAAgB,CAAC;GAC/B,yBAAyB,CA6FrC"}
1
+ {"version":3,"file":"MJDashboardEntityExtended.js","sourceRoot":"","sources":["../../src/custom/MJDashboardEntityExtended.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAA0C,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AACpG,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,mBAAmB,EAAoB,MAAM,wBAAwB,CAAC;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAGjD,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,iBAAiB;IACrD,SAAS;QACZ,IAAG,CAAC;YACA,KAAK,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,oBAAoB,GAAG;gBACzB,OAAO,EAAE,CAAC;gBACV,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI;gBACf,WAAW,EAAE,IAAI;gBACjB,KAAK,EAAE,EAAE;aACZ,CAAA;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YAExC,MAAM,EAAE,GAAG,IAAI,CAAC,aAA6C,CAAC;YAC9D,IAAG,EAAE,CAAC,WAAW,EAAC,CAAC;gBACf,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAC1C,CAAC;YAED,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,OAAM,KAAK,EAAE,CAAC;YACV,QAAQ,CAAC,sBAAsB,CAAC,CAAC;YACjC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAED;;;;OAIG;IACa,QAAQ;QACpB,4BAA4B;QAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC;QAEhC,sCAAsC;QACtC,MAAM,EAAE,GAAI,IAAI,CAAC,aAAyC,CAAA;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,WAAW,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;YACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CACtC,YAAY,EACZ,2CAA2C,EAC3C,IAAI,CACP,CAAC,CAAC;YACH,OAAO,MAAM,CAAC;QAClB,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;YAE9F,oFAAoF;YACpF,yFAAyF;YACzF,qFAAqF;YACrF,qFAAqF;YACrF,wEAAwE;YACxE,EAAE;YACF,yFAAyF;YACzF,uFAAuF;YACvF,qEAAqE;YACrE,EAAE;YACF,kFAAkF;YAClF,mFAAmF;YACnF,wCAAwC;YACxC,MAAM,UAAU,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;YAE/F,IAAI,CAAC,WAAW,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;gBACtC,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,mBAAmB,CACtC,YAAY,EACZ,mDAAmD,EACnD,IAAI,CAAC,EAAE,CACV,CAAC,CAAC;YACP,CAAC;QACL,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;IAED;;;OAGG;IACa,KAAK,CAAC,MAAM,CAAC,OAA6B;QACtD,MAAM,EAAE,GAAG,IAAI,CAAC,aAAyC,CAAC;QAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,IAAI,EAAE,CAAC,WAAW,CAAC;QAE9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACf,QAAQ,CAAC,iDAAiD,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,0BAA0B;QAC1B,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,CAAC,uBAAuB,CAAC,IAAI,CAAC,EAAE,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QAE9F,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YACzB,QAAQ,CAAC,QAAQ,WAAW,CAAC,EAAE,iDAAiD,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3F,OAAO,KAAK,CAAC;QACjB,CAAC;QAED,0CAA0C;QAC1C,OAAO,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjC,CAAC;CACJ,CAAA;AA5GY,yBAAyB;IADrC,aAAa,CAAC,UAAU,EAAE,gBAAgB,CAAC;GAC/B,yBAAyB,CA4GrC"}