@memberjunction/core-entities 6.1.4 → 6.2.0-edge.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.tsbuildinfo +1 -1
- package/dist/artifact-extraction/artifact-extractor.d.ts +1 -1
- package/dist/artifact-extraction/artifact-extractor.js +2 -2
- package/dist/custom/MJConversationDetailEntityExtended.d.ts +1 -1
- package/dist/custom/MJConversationDetailEntityExtended.js +5 -5
- package/dist/custom/MJTemplateEntityExtended.d.ts +2 -2
- package/dist/custom/MJTemplateEntityExtended.js +6 -6
- package/dist/custom/MJUserViewEntityExtended.d.ts +4 -4
- package/dist/custom/MJUserViewEntityExtended.js +22 -22
- package/dist/custom/MJUserViewEntityExtended.js.map +1 -1
- package/dist/custom/Permissions/BaseShareEntityExtended.d.ts +8 -0
- package/dist/custom/Permissions/BaseShareEntityExtended.d.ts.map +1 -1
- package/dist/custom/Permissions/BaseShareEntityExtended.js +20 -4
- package/dist/custom/Permissions/BaseShareEntityExtended.js.map +1 -1
- package/dist/custom/Permissions/MJAccessControlRuleEntityExtended.js +4 -4
- package/dist/custom/Permissions/MJArtifactPermissionEntityExtended.js +5 -5
- package/dist/custom/Permissions/MJCollectionPermissionEntityExtended.js +5 -5
- package/dist/custom/Permissions/MJDashboardPermissionEntityExtended.js +5 -5
- package/dist/custom/ResourcePermissions/MJResourcePermissionEntityExtended.js +2 -2
- package/dist/custom/ResourcePermissions/ResourcePermissionEngine.d.ts +2 -2
- package/dist/custom/ResourcePermissions/ResourcePermissionEngine.js +5 -5
- package/dist/engines/ApplicationSettingEngine.d.ts +1 -1
- package/dist/engines/ApplicationSettingEngine.js +8 -8
- package/dist/engines/AuditLogTypeEngine.d.ts +1 -1
- package/dist/engines/AuditLogTypeEngine.js +4 -4
- package/dist/engines/InstanceConfigEngine.d.ts +1 -1
- package/dist/engines/InstanceConfigEngine.js +2 -2
- package/dist/engines/MCPEngine.d.ts +4 -4
- package/dist/engines/MCPEngine.js +24 -24
- package/dist/engines/PermissionEngine.d.ts +2 -0
- package/dist/engines/PermissionEngine.d.ts.map +1 -1
- package/dist/engines/PermissionEngine.js +5 -1
- package/dist/engines/PermissionEngine.js.map +1 -1
- package/dist/engines/ResourceTypeEngine.d.ts +1 -1
- package/dist/engines/ResourceTypeEngine.js +4 -4
- package/dist/engines/TypeTablesCache.d.ts +1 -1
- package/dist/engines/TypeTablesCache.js +3 -3
- package/dist/engines/UserInfoEngine.d.ts +8 -8
- package/dist/engines/UserInfoEngine.js +48 -48
- package/dist/engines/UserRoutineEngine.d.ts +3 -3
- package/dist/engines/UserRoutineEngine.js +15 -15
- package/dist/engines/conversations.d.ts +183 -7
- package/dist/engines/conversations.d.ts.map +1 -1
- package/dist/engines/conversations.js +418 -57
- package/dist/engines/conversations.js.map +1 -1
- package/dist/generated/entities/__mj.d.ts +1999 -292
- package/dist/generated/entities/__mj.d.ts.map +1 -1
- package/dist/generated/entities/__mj.js +1430 -13
- package/dist/generated/entities/__mj.js.map +1 -1
- package/dist/generated/remote_operations.d.ts +100 -0
- package/dist/generated/remote_operations.d.ts.map +1 -1
- package/dist/generated/remote_operations.js +18 -0
- package/dist/generated/remote_operations.js.map +1 -1
- package/package.json +5 -5
|
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { BaseEntity, EntityPermissionType, RunView } from '@memberjunction/core';
|
|
8
8
|
import { RegisterClass, UUIDsEqual } from '@memberjunction/global';
|
|
9
9
|
import { MJCollectionPermissionEntity } from '../../generated/entity_subclasses.js';
|
|
10
|
-
import {
|
|
10
|
+
import { AssertCallerMayCreateShare, BuildActionsSummary, CheckShareManagePermission, DispatchShareNotificationAfterSave, } from './BaseShareEntityExtended.js';
|
|
11
11
|
/**
|
|
12
12
|
* Extended Collection Permission entity — same dual-purpose pattern as
|
|
13
13
|
* {@link MJDashboardPermissionEntityExtended}. See that class for rationale.
|
|
@@ -21,19 +21,19 @@ let MJCollectionPermissionEntityExtended = class MJCollectionPermissionEntityExt
|
|
|
21
21
|
CheckPermissions(type, throwError) {
|
|
22
22
|
if (type === EntityPermissionType.Update || type === EntityPermissionType.Delete) {
|
|
23
23
|
const user = this.ActiveUser;
|
|
24
|
-
if (user &&
|
|
24
|
+
if (user && CheckShareManagePermission(user, this.SharedByUserID))
|
|
25
25
|
return true;
|
|
26
26
|
}
|
|
27
27
|
return super.CheckPermissions(type, throwError);
|
|
28
28
|
}
|
|
29
29
|
async Save(options) {
|
|
30
30
|
const isNewShare = !this.IsSaved;
|
|
31
|
-
const allowed = await
|
|
31
|
+
const allowed = await AssertCallerMayCreateShare(this, isNewShare, () => this.callerMayShareCollection(), 'Only the collection owner or someone with Share permission on this collection can create a new share.');
|
|
32
32
|
if (!allowed)
|
|
33
33
|
return false;
|
|
34
34
|
const saved = await super.Save(options);
|
|
35
35
|
if (saved) {
|
|
36
|
-
await
|
|
36
|
+
await DispatchShareNotificationAfterSave(this, isNewShare, this.SharedByUserID, (provider, grantorId) => ({
|
|
37
37
|
Provider: provider,
|
|
38
38
|
ContextUser: this.ContextCurrentUser,
|
|
39
39
|
GrantorUserID: grantorId,
|
|
@@ -49,7 +49,7 @@ let MJCollectionPermissionEntityExtended = class MJCollectionPermissionEntityExt
|
|
|
49
49
|
return saved;
|
|
50
50
|
}
|
|
51
51
|
actionsSummary() {
|
|
52
|
-
return
|
|
52
|
+
return BuildActionsSummary({
|
|
53
53
|
view: this.CanRead,
|
|
54
54
|
edit: this.CanEdit,
|
|
55
55
|
delete: this.CanDelete,
|
|
@@ -8,7 +8,7 @@ import { BaseEntity, EntityPermissionType } from '@memberjunction/core';
|
|
|
8
8
|
import { RegisterClass, UUIDsEqual } from '@memberjunction/global';
|
|
9
9
|
import { DashboardEngine } from '../../engines/dashboards.js';
|
|
10
10
|
import { MJDashboardPermissionEntity } from '../../generated/entity_subclasses.js';
|
|
11
|
-
import {
|
|
11
|
+
import { AssertCallerMayCreateShare, BuildActionsSummary, CheckShareManagePermission, DispatchShareNotificationAfterSave, } from './BaseShareEntityExtended.js';
|
|
12
12
|
/**
|
|
13
13
|
* Extended Dashboard Permission entity. Adds two behaviors on top of the
|
|
14
14
|
* generated base:
|
|
@@ -27,7 +27,7 @@ let MJDashboardPermissionEntityExtended = class MJDashboardPermissionEntityExten
|
|
|
27
27
|
CheckPermissions(type, throwError) {
|
|
28
28
|
if (type === EntityPermissionType.Update || type === EntityPermissionType.Delete) {
|
|
29
29
|
const user = this.ActiveUser;
|
|
30
|
-
if (user &&
|
|
30
|
+
if (user && CheckShareManagePermission(user, this.SharedByUserID, (userId) => this.isDashboardOwner(userId))) {
|
|
31
31
|
return true;
|
|
32
32
|
}
|
|
33
33
|
}
|
|
@@ -35,12 +35,12 @@ let MJDashboardPermissionEntityExtended = class MJDashboardPermissionEntityExten
|
|
|
35
35
|
}
|
|
36
36
|
async Save(options) {
|
|
37
37
|
const isNewShare = !this.IsSaved;
|
|
38
|
-
const allowed = await
|
|
38
|
+
const allowed = await AssertCallerMayCreateShare(this, isNewShare, () => this.callerMayShareDashboard(), 'Only the dashboard owner or someone with Share permission on this dashboard can create a new share.');
|
|
39
39
|
if (!allowed)
|
|
40
40
|
return false;
|
|
41
41
|
const saved = await super.Save(options);
|
|
42
42
|
if (saved) {
|
|
43
|
-
await
|
|
43
|
+
await DispatchShareNotificationAfterSave(this, isNewShare, this.SharedByUserID, (provider, grantorId) => ({
|
|
44
44
|
Provider: provider,
|
|
45
45
|
ContextUser: this.ContextCurrentUser,
|
|
46
46
|
GrantorUserID: grantorId,
|
|
@@ -76,7 +76,7 @@ let MJDashboardPermissionEntityExtended = class MJDashboardPermissionEntityExten
|
|
|
76
76
|
p.CanShare === true);
|
|
77
77
|
}
|
|
78
78
|
actionsSummary() {
|
|
79
|
-
return
|
|
79
|
+
return BuildActionsSummary({
|
|
80
80
|
view: this.CanRead,
|
|
81
81
|
edit: this.CanEdit,
|
|
82
82
|
delete: this.CanDelete,
|
|
@@ -10,7 +10,7 @@ import { MJResourcePermissionEntity } from "../../generated/entity_subclasses.js
|
|
|
10
10
|
import { ResourcePermissionEngine } from "./ResourcePermissionEngine.js";
|
|
11
11
|
import { ConversationEngine } from "../../engines/conversations.js";
|
|
12
12
|
import { CreateShareNotification } from "../Permissions/shareNotification.js";
|
|
13
|
-
import {
|
|
13
|
+
import { CheckShareManagePermission } from "../Permissions/BaseShareEntityExtended.js";
|
|
14
14
|
/** `MJ: Resource Types.ID` for Conversations. */
|
|
15
15
|
const CONVERSATIONS_RESOURCE_TYPE_ID = '81D4BC3D-9FEB-EF11-B01A-286B35C04427';
|
|
16
16
|
/**
|
|
@@ -48,7 +48,7 @@ let MJResourcePermissionEntityExtended = class MJResourcePermissionEntityExtende
|
|
|
48
48
|
if (this._authorizedByOwnerOverride)
|
|
49
49
|
return true;
|
|
50
50
|
const user = this.ActiveUser;
|
|
51
|
-
if (user &&
|
|
51
|
+
if (user && CheckShareManagePermission(user, this.SharedByUserID, (userId) => this.currentUserOwnsResource(userId) || this.currentUserHasOwnerGrant(userId))) {
|
|
52
52
|
return true;
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -8,8 +8,8 @@ export declare class ResourcePermissionEngine extends BaseEngine<ResourcePermiss
|
|
|
8
8
|
* Returns the global instance of the class. This is a singleton class, so there is only one instance of it in the application. Do not directly create new instances of it, always use this method to get the instance.
|
|
9
9
|
*/
|
|
10
10
|
static get Instance(): ResourcePermissionEngine;
|
|
11
|
-
private
|
|
12
|
-
private
|
|
11
|
+
private _permissions;
|
|
12
|
+
private _resourceTypes;
|
|
13
13
|
Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
14
14
|
get ResourceTypes(): MJResourceTypeEntity[];
|
|
15
15
|
get Permissions(): MJResourcePermissionEntity[];
|
|
@@ -21,23 +21,23 @@ let ResourcePermissionEngine = class ResourcePermissionEngine extends BaseEngine
|
|
|
21
21
|
{
|
|
22
22
|
Type: 'entity',
|
|
23
23
|
EntityName: 'MJ: Resource Permissions',
|
|
24
|
-
PropertyName: "
|
|
24
|
+
PropertyName: "_permissions",
|
|
25
25
|
CacheLocal: true
|
|
26
26
|
},
|
|
27
27
|
{
|
|
28
28
|
Type: 'dataset',
|
|
29
29
|
DatasetName: 'ResourceTypes',
|
|
30
|
-
PropertyName: "
|
|
30
|
+
PropertyName: "_resourceTypes",
|
|
31
31
|
DatasetResultHandling: "single_property"
|
|
32
32
|
}
|
|
33
33
|
];
|
|
34
34
|
await super.Load(c, provider, forceRefresh, contextUser);
|
|
35
35
|
}
|
|
36
36
|
get ResourceTypes() {
|
|
37
|
-
return this.
|
|
37
|
+
return this._resourceTypes?.ResourceTypes ?? [];
|
|
38
38
|
}
|
|
39
39
|
get Permissions() {
|
|
40
|
-
return this.
|
|
40
|
+
return this._permissions ?? [];
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Case-insensitive name → ID lookup against the cached `MJ: Resource Types`
|
|
@@ -49,7 +49,7 @@ let ResourcePermissionEngine = class ResourcePermissionEngine extends BaseEngine
|
|
|
49
49
|
if (!name)
|
|
50
50
|
return null;
|
|
51
51
|
const lower = name.trim().toLowerCase();
|
|
52
|
-
const match = this.
|
|
52
|
+
const match = this._resourceTypes?.ResourceTypes?.find((rt) => rt.Name?.trim().toLowerCase() === lower);
|
|
53
53
|
return match?.ID ?? null;
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
@@ -40,7 +40,7 @@ export declare class ApplicationSettingEngine extends BaseEngine<ApplicationSett
|
|
|
40
40
|
* this method to get the instance.
|
|
41
41
|
*/
|
|
42
42
|
static get Instance(): ApplicationSettingEngine;
|
|
43
|
-
private
|
|
43
|
+
private _applicationSettings;
|
|
44
44
|
/**
|
|
45
45
|
* Debounce time in milliseconds for SetSettingDebounced calls.
|
|
46
46
|
* Default is 500ms. Change via the SettingsDebounceMs setter.
|
|
@@ -50,7 +50,7 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
50
50
|
constructor() {
|
|
51
51
|
super(...arguments);
|
|
52
52
|
// Private storage for the application setting cache (all rows, global + app-scoped)
|
|
53
|
-
this.
|
|
53
|
+
this._applicationSettings = [];
|
|
54
54
|
// ========================================================================
|
|
55
55
|
// DEBOUNCED SETTINGS SUPPORT
|
|
56
56
|
// ========================================================================
|
|
@@ -96,7 +96,7 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
96
96
|
{
|
|
97
97
|
Type: 'entity',
|
|
98
98
|
EntityName: 'MJ: Application Settings',
|
|
99
|
-
PropertyName: '
|
|
99
|
+
PropertyName: '_applicationSettings',
|
|
100
100
|
CacheLocal: true,
|
|
101
101
|
// Global reference data — no user filter
|
|
102
102
|
},
|
|
@@ -112,7 +112,7 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
112
112
|
* refresh).
|
|
113
113
|
*/
|
|
114
114
|
get ApplicationSettings$() {
|
|
115
|
-
return this.ObserveProperty('
|
|
115
|
+
return this.ObserveProperty('_applicationSettings');
|
|
116
116
|
}
|
|
117
117
|
// ========================================================================
|
|
118
118
|
// PUBLIC ACCESSORS
|
|
@@ -121,7 +121,7 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
121
121
|
* Get all application settings in the cache (global + app-scoped, unfiltered).
|
|
122
122
|
*/
|
|
123
123
|
get ApplicationSettings() {
|
|
124
|
-
return this.GetConfigData('
|
|
124
|
+
return this.GetConfigData('_applicationSettings');
|
|
125
125
|
}
|
|
126
126
|
/**
|
|
127
127
|
* Get all settings for a specific application, OR all GLOBAL settings when no applicationId
|
|
@@ -235,8 +235,8 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
235
235
|
}
|
|
236
236
|
const saved = await setting.Save();
|
|
237
237
|
if (saved) {
|
|
238
|
-
if (!this.
|
|
239
|
-
this.
|
|
238
|
+
if (!this._applicationSettings.some((s) => UUIDsEqual(s.ID, setting.ID))) {
|
|
239
|
+
this._applicationSettings.push(setting);
|
|
240
240
|
}
|
|
241
241
|
return true;
|
|
242
242
|
}
|
|
@@ -266,9 +266,9 @@ let ApplicationSettingEngine = class ApplicationSettingEngine extends BaseEngine
|
|
|
266
266
|
try {
|
|
267
267
|
const deleted = await setting.Delete();
|
|
268
268
|
if (deleted) {
|
|
269
|
-
const index = this.
|
|
269
|
+
const index = this._applicationSettings.findIndex((s) => UUIDsEqual(s.ID, setting.ID));
|
|
270
270
|
if (index >= 0) {
|
|
271
|
-
this.
|
|
271
|
+
this._applicationSettings.splice(index, 1);
|
|
272
272
|
}
|
|
273
273
|
return true;
|
|
274
274
|
}
|
|
@@ -22,7 +22,7 @@ export declare class AuditLogTypeEngine extends BaseEngine<AuditLogTypeEngine> {
|
|
|
22
22
|
static get Instance(): AuditLogTypeEngine;
|
|
23
23
|
Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
24
24
|
get AuditLogTypes(): MJAuditLogTypeEntity[];
|
|
25
|
-
private
|
|
25
|
+
private _auditLogTypes;
|
|
26
26
|
/**
|
|
27
27
|
* Look up a row by exact `Name`. Returns `undefined` if the engine
|
|
28
28
|
* hasn't been configured yet or no row matches — callers should treat
|
|
@@ -20,7 +20,7 @@ import { BaseEngine } from "@memberjunction/core";
|
|
|
20
20
|
export class AuditLogTypeEngine extends BaseEngine {
|
|
21
21
|
constructor() {
|
|
22
22
|
super(...arguments);
|
|
23
|
-
this.
|
|
23
|
+
this._auditLogTypes = [];
|
|
24
24
|
}
|
|
25
25
|
static get Instance() {
|
|
26
26
|
return super.getInstance();
|
|
@@ -30,14 +30,14 @@ export class AuditLogTypeEngine extends BaseEngine {
|
|
|
30
30
|
{
|
|
31
31
|
Type: 'entity',
|
|
32
32
|
EntityName: 'MJ: Audit Log Types',
|
|
33
|
-
PropertyName: '
|
|
33
|
+
PropertyName: '_auditLogTypes',
|
|
34
34
|
CacheLocal: true,
|
|
35
35
|
},
|
|
36
36
|
];
|
|
37
37
|
await this.Load(c, provider, forceRefresh, contextUser);
|
|
38
38
|
}
|
|
39
39
|
get AuditLogTypes() {
|
|
40
|
-
return this.GetConfigData('
|
|
40
|
+
return this.GetConfigData('_auditLogTypes');
|
|
41
41
|
}
|
|
42
42
|
/**
|
|
43
43
|
* Look up a row by exact `Name`. Returns `undefined` if the engine
|
|
@@ -46,7 +46,7 @@ export class AuditLogTypeEngine extends BaseEngine {
|
|
|
46
46
|
* persist rows with an undefined `AuditLogTypeID`.
|
|
47
47
|
*/
|
|
48
48
|
ByName(name) {
|
|
49
|
-
return this.
|
|
49
|
+
return this._auditLogTypes.find(t => t.Name === name);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
52
52
|
//# sourceMappingURL=AuditLogTypeEngine.js.map
|
|
@@ -100,6 +100,6 @@ export declare class InstanceConfigEngine extends BaseEngine<InstanceConfigEngin
|
|
|
100
100
|
* Resolve the effective value for a configuration record. Returns Value if
|
|
101
101
|
* it is non-empty, otherwise falls back to DefaultValue.
|
|
102
102
|
*/
|
|
103
|
-
private
|
|
103
|
+
private resolveValue;
|
|
104
104
|
}
|
|
105
105
|
//# sourceMappingURL=InstanceConfigEngine.d.ts.map
|
|
@@ -99,7 +99,7 @@ export class InstanceConfigEngine extends BaseEngine {
|
|
|
99
99
|
const config = this.GetConfigByKey(featureKey);
|
|
100
100
|
if (!config)
|
|
101
101
|
return undefined;
|
|
102
|
-
return this.
|
|
102
|
+
return this.resolveValue(config);
|
|
103
103
|
}
|
|
104
104
|
/**
|
|
105
105
|
* Get a boolean value for a feature key. Interprets 'true' (case-insensitive) as true,
|
|
@@ -187,7 +187,7 @@ export class InstanceConfigEngine extends BaseEngine {
|
|
|
187
187
|
* Resolve the effective value for a configuration record. Returns Value if
|
|
188
188
|
* it is non-empty, otherwise falls back to DefaultValue.
|
|
189
189
|
*/
|
|
190
|
-
|
|
190
|
+
resolveValue(config) {
|
|
191
191
|
const val = config.Value;
|
|
192
192
|
if (val != null && val.trim().length > 0) {
|
|
193
193
|
return val;
|
|
@@ -49,10 +49,10 @@ export declare class MCPEngine extends BaseEngine<MCPEngine> {
|
|
|
49
49
|
* Gets the singleton instance of MCPEngine
|
|
50
50
|
*/
|
|
51
51
|
static get Instance(): MCPEngine;
|
|
52
|
-
private
|
|
53
|
-
private
|
|
54
|
-
private
|
|
55
|
-
private
|
|
52
|
+
private _servers;
|
|
53
|
+
private _connections;
|
|
54
|
+
private _tools;
|
|
55
|
+
private _favorites;
|
|
56
56
|
/**
|
|
57
57
|
* Gets all cached MCP servers
|
|
58
58
|
*/
|
|
@@ -42,10 +42,10 @@ export class MCPEngine extends BaseEngine {
|
|
|
42
42
|
// ========================================
|
|
43
43
|
// Private Storage
|
|
44
44
|
// ========================================
|
|
45
|
-
this.
|
|
46
|
-
this.
|
|
47
|
-
this.
|
|
48
|
-
this.
|
|
45
|
+
this._servers = [];
|
|
46
|
+
this._connections = [];
|
|
47
|
+
this._tools = [];
|
|
48
|
+
this._favorites = [];
|
|
49
49
|
}
|
|
50
50
|
/**
|
|
51
51
|
* Configures and loads the MCP engine data.
|
|
@@ -59,25 +59,25 @@ export class MCPEngine extends BaseEngine {
|
|
|
59
59
|
{
|
|
60
60
|
Type: 'entity',
|
|
61
61
|
EntityName: 'MJ: MCP Servers',
|
|
62
|
-
PropertyName: '
|
|
62
|
+
PropertyName: '_servers',
|
|
63
63
|
CacheLocal: true
|
|
64
64
|
},
|
|
65
65
|
{
|
|
66
66
|
Type: 'entity',
|
|
67
67
|
EntityName: 'MJ: MCP Server Connections',
|
|
68
|
-
PropertyName: '
|
|
68
|
+
PropertyName: '_connections',
|
|
69
69
|
CacheLocal: true
|
|
70
70
|
},
|
|
71
71
|
{
|
|
72
72
|
Type: 'entity',
|
|
73
73
|
EntityName: 'MJ: MCP Server Tools',
|
|
74
|
-
PropertyName: '
|
|
74
|
+
PropertyName: '_tools',
|
|
75
75
|
CacheLocal: true
|
|
76
76
|
},
|
|
77
77
|
{
|
|
78
78
|
Type: 'entity',
|
|
79
79
|
EntityName: 'MJ: MCP Tool Favorites',
|
|
80
|
-
PropertyName: '
|
|
80
|
+
PropertyName: '_favorites',
|
|
81
81
|
CacheLocal: true
|
|
82
82
|
}
|
|
83
83
|
];
|
|
@@ -96,26 +96,26 @@ export class MCPEngine extends BaseEngine {
|
|
|
96
96
|
* Gets all cached MCP servers
|
|
97
97
|
*/
|
|
98
98
|
get Servers() {
|
|
99
|
-
return this.GetConfigData('
|
|
99
|
+
return this.GetConfigData('_servers');
|
|
100
100
|
}
|
|
101
101
|
/**
|
|
102
102
|
* Gets all cached MCP server connections
|
|
103
103
|
*/
|
|
104
104
|
get Connections() {
|
|
105
|
-
return this.GetConfigData('
|
|
105
|
+
return this.GetConfigData('_connections');
|
|
106
106
|
}
|
|
107
107
|
/**
|
|
108
108
|
* Gets all cached MCP server tools
|
|
109
109
|
*/
|
|
110
110
|
get Tools() {
|
|
111
|
-
return this.GetConfigData('
|
|
111
|
+
return this.GetConfigData('_tools');
|
|
112
112
|
}
|
|
113
113
|
/**
|
|
114
114
|
* Gets all cached MCP tool favorites (across all users).
|
|
115
115
|
* For current-user-only access, use {@link GetFavoritesByUser}.
|
|
116
116
|
*/
|
|
117
117
|
get Favorites() {
|
|
118
|
-
return this.GetConfigData('
|
|
118
|
+
return this.GetConfigData('_favorites');
|
|
119
119
|
}
|
|
120
120
|
/**
|
|
121
121
|
* Gets all MCP tool favorites for a specific user.
|
|
@@ -123,7 +123,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
123
123
|
* @param userId - The user ID
|
|
124
124
|
*/
|
|
125
125
|
GetFavoritesByUser(userId) {
|
|
126
|
-
return this.
|
|
126
|
+
return this._favorites.filter(f => UUIDsEqual(f.UserID, userId));
|
|
127
127
|
}
|
|
128
128
|
/**
|
|
129
129
|
* Gets a single MCP tool favorite for a user/tool pair.
|
|
@@ -132,7 +132,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
132
132
|
* @param toolId - The MCP server tool ID
|
|
133
133
|
*/
|
|
134
134
|
GetFavoriteByUserAndTool(userId, toolId) {
|
|
135
|
-
return this.
|
|
135
|
+
return this._favorites.find(f => UUIDsEqual(f.UserID, userId) && UUIDsEqual(f.MCPServerToolID, toolId));
|
|
136
136
|
}
|
|
137
137
|
// ========================================
|
|
138
138
|
// Helper Methods
|
|
@@ -144,7 +144,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
144
144
|
* @returns The server entity or undefined if not found
|
|
145
145
|
*/
|
|
146
146
|
GetServerById(serverId) {
|
|
147
|
-
return this.
|
|
147
|
+
return this._servers.find(s => UUIDsEqual(s.ID, serverId));
|
|
148
148
|
}
|
|
149
149
|
/**
|
|
150
150
|
* Gets a connection by ID
|
|
@@ -153,7 +153,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
153
153
|
* @returns The connection entity or undefined if not found
|
|
154
154
|
*/
|
|
155
155
|
GetConnectionById(connectionId) {
|
|
156
|
-
return this.
|
|
156
|
+
return this._connections.find(c => UUIDsEqual(c.ID, connectionId));
|
|
157
157
|
}
|
|
158
158
|
/**
|
|
159
159
|
* Gets a tool by ID
|
|
@@ -162,7 +162,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
162
162
|
* @returns The tool entity or undefined if not found
|
|
163
163
|
*/
|
|
164
164
|
GetToolById(toolId) {
|
|
165
|
-
return this.
|
|
165
|
+
return this._tools.find(t => UUIDsEqual(t.ID, toolId));
|
|
166
166
|
}
|
|
167
167
|
/**
|
|
168
168
|
* Gets all connections for a specific server
|
|
@@ -171,7 +171,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
171
171
|
* @returns Array of connections for the server
|
|
172
172
|
*/
|
|
173
173
|
GetConnectionsByServer(serverId) {
|
|
174
|
-
return this.
|
|
174
|
+
return this._connections.filter(c => UUIDsEqual(c.MCPServerID, serverId));
|
|
175
175
|
}
|
|
176
176
|
/**
|
|
177
177
|
* Gets all tools for a specific server
|
|
@@ -180,7 +180,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
180
180
|
* @returns Array of tools for the server
|
|
181
181
|
*/
|
|
182
182
|
GetToolsByServer(serverId) {
|
|
183
|
-
return this.
|
|
183
|
+
return this._tools.filter(t => UUIDsEqual(t.MCPServerID, serverId));
|
|
184
184
|
}
|
|
185
185
|
/**
|
|
186
186
|
* Gets active servers only
|
|
@@ -188,7 +188,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
188
188
|
* @returns Array of servers with Status = 'Active'
|
|
189
189
|
*/
|
|
190
190
|
get ActiveServers() {
|
|
191
|
-
return this.GetConfigData('
|
|
191
|
+
return this.GetConfigData('_servers').filter(s => s.Status === 'Active');
|
|
192
192
|
}
|
|
193
193
|
/**
|
|
194
194
|
* Gets active connections only
|
|
@@ -196,7 +196,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
196
196
|
* @returns Array of connections with Status = 'Active'
|
|
197
197
|
*/
|
|
198
198
|
get ActiveConnections() {
|
|
199
|
-
return this.GetConfigData('
|
|
199
|
+
return this.GetConfigData('_connections').filter(c => c.Status === 'Active');
|
|
200
200
|
}
|
|
201
201
|
/**
|
|
202
202
|
* Gets active tools only
|
|
@@ -204,7 +204,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
204
204
|
* @returns Array of tools with Status = 'Active'
|
|
205
205
|
*/
|
|
206
206
|
get ActiveTools() {
|
|
207
|
-
return this.GetConfigData('
|
|
207
|
+
return this.GetConfigData('_tools').filter(t => t.Status === 'Active');
|
|
208
208
|
}
|
|
209
209
|
/**
|
|
210
210
|
* Gets active connections for a specific server
|
|
@@ -213,7 +213,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
213
213
|
* @returns Array of active connections for the server
|
|
214
214
|
*/
|
|
215
215
|
GetActiveConnectionsByServer(serverId) {
|
|
216
|
-
return this.
|
|
216
|
+
return this._connections.filter(c => UUIDsEqual(c.MCPServerID, serverId) && c.Status === 'Active');
|
|
217
217
|
}
|
|
218
218
|
/**
|
|
219
219
|
* Gets active tools for a specific server
|
|
@@ -222,7 +222,7 @@ export class MCPEngine extends BaseEngine {
|
|
|
222
222
|
* @returns Array of active tools for the server
|
|
223
223
|
*/
|
|
224
224
|
GetActiveToolsByServer(serverId) {
|
|
225
|
-
return this.
|
|
225
|
+
return this._tools.filter(t => UUIDsEqual(t.MCPServerID, serverId) && t.Status === 'Active');
|
|
226
226
|
}
|
|
227
227
|
/**
|
|
228
228
|
* Gets the server name for a given server ID
|
|
@@ -111,6 +111,8 @@ export declare class PermissionEngine extends BaseEngine<PermissionEngine> {
|
|
|
111
111
|
*/
|
|
112
112
|
static DomainIconFor(domainName: string): string;
|
|
113
113
|
/** For unit tests: swap the provider map with a caller-supplied one. */
|
|
114
|
+
SetProvidersForTesting(providers: Map<string, PermissionProviderBase>): void;
|
|
115
|
+
/** @deprecated Use {@link SetProvidersForTesting}. */
|
|
114
116
|
_SetProvidersForTesting(providers: Map<string, PermissionProviderBase>): void;
|
|
115
117
|
/**
|
|
116
118
|
* Convenience wrapper around {@link CheckPermission} that throws a typed
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionEngine.d.ts","sourceRoot":"","sources":["../../src/engines/PermissionEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EAEV,iBAAiB,EAGjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EAErB,sBAAsB,EAGtB,QAAQ,EACX,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAoB1E;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW1D,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,+BAA+B,qBAAqB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBACa,gBAAiB,SAAQ,UAAU,CAAC,gBAAgB,CAAC;IAC9D,WAAkB,QAAQ,IAAI,gBAAgB,CAE7C;IAED,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,UAAU,CAAkD;IAEvD,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAchH;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAmC5B;;;;OAIG;IACU,eAAe,CACxB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,gBAAgB,GACzB,OAAO,CAAC,qBAAqB,CAAC;IAYjC;;;;OAIG;IACU,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAInF;;;;;;;;;;;;OAYG;YACW,qBAAqB;IAmBnC;;;;;;;OAOG;IACU,2BAA2B,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAI5F;;;;OAIG;IACU,4BAA4B,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAI7F;;;OAGG;IACU,sBAAsB,CAC/B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAMlC,iDAAiD;IACjD,IAAW,OAAO,IAAI,wBAAwB,EAAE,CAE/C;IAED,6FAA6F;IACtF,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAI1E;;;;;;OAMG;IACI,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,MAAM,EAAE;IAInF;;;;OAIG;WACW,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIvD,wEAAwE;IACjE,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,IAAI;IAIpF;;;;;;;;;;;;;;;;OAgBG;IACU,gBAAgB,CACzB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,gBAAgB,GACzB,OAAO,CAAC,IAAI,CAAC;IAOhB;;;;;;;;;OASG;IACU,gBAAgB,CAAC,MAAM,GAAE,qBAA0B,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAqDlG;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;CAMjC"}
|
|
1
|
+
{"version":3,"file":"PermissionEngine.d.ts","sourceRoot":"","sources":["../../src/engines/PermissionEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,UAAU,EAEV,iBAAiB,EAGjB,oBAAoB,EACpB,gBAAgB,EAChB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,EAErB,sBAAsB,EAGtB,QAAQ,EACX,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAoB1E;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAW1D,CAAC;AAEF,wFAAwF;AACxF,eAAO,MAAM,+BAA+B,qBAAqB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBACa,gBAAiB,SAAQ,UAAU,CAAC,gBAAgB,CAAC;IAC9D,WAAkB,QAAQ,IAAI,gBAAgB,CAE7C;IAED,OAAO,CAAC,QAAQ,CAAkC;IAClD,OAAO,CAAC,UAAU,CAAkD;IAEvD,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAchH;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IAmC5B;;;;OAIG;IACU,eAAe,CACxB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,gBAAgB,GACzB,OAAO,CAAC,qBAAqB,CAAC;IAYjC;;;;OAIG;IACU,qBAAqB,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAInF;;;;;;;;;;;;OAYG;YACW,qBAAqB;IAmBnC;;;;;;;OAOG;IACU,2BAA2B,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAI5F;;;;OAIG;IACU,4BAA4B,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAI7F;;;OAGG;IACU,sBAAsB,CAC/B,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAMlC,iDAAiD;IACjD,IAAW,OAAO,IAAI,wBAAwB,EAAE,CAE/C;IAED,6FAA6F;IACtF,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,sBAAsB,GAAG,SAAS;IAI1E;;;;;;OAMG;IACI,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,MAAM,EAAE;IAInF;;;;OAIG;WACW,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAIvD,wEAAwE;IACjE,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,IAAI;IAInF,sDAAsD;IAC/C,uBAAuB,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,sBAAsB,CAAC,GAAG,IAAI;IAIpF;;;;;;;;;;;;;;;;OAgBG;IACU,gBAAgB,CACzB,IAAI,EAAE,QAAQ,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,MAAM,EAAE,gBAAgB,GACzB,OAAO,CAAC,IAAI,CAAC;IAOhB;;;;;;;;;OASG;IACU,gBAAgB,CAAC,MAAM,GAAE,qBAA0B,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAqDlG;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAS/B;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;CAMjC"}
|
|
@@ -234,9 +234,13 @@ let PermissionEngine = class PermissionEngine extends BaseEngine {
|
|
|
234
234
|
return PERMISSION_DOMAIN_ICONS[domainName] ?? PERMISSION_DOMAIN_ICON_FALLBACK;
|
|
235
235
|
}
|
|
236
236
|
/** For unit tests: swap the provider map with a caller-supplied one. */
|
|
237
|
-
|
|
237
|
+
SetProvidersForTesting(providers) {
|
|
238
238
|
this._providers = providers;
|
|
239
239
|
}
|
|
240
|
+
/** @deprecated Use {@link SetProvidersForTesting}. */
|
|
241
|
+
_SetProvidersForTesting(providers) {
|
|
242
|
+
return this.SetProvidersForTesting(providers);
|
|
243
|
+
}
|
|
240
244
|
/**
|
|
241
245
|
* Convenience wrapper around {@link CheckPermission} that throws a typed
|
|
242
246
|
* {@link PermissionDeniedError} when the action is not permitted. Intended for
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PermissionEngine.js","sourceRoot":"","sources":["../../src/engines/PermissionEngine.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EACH,UAAU,EAGV,QAAQ,EACR,WAAW,EAMX,qBAAqB,EACrB,sBAAsB,EACtB,kBAAkB,EAClB,OAAO,GAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAIlD;;;;GAIG;AACH,MAAM,wBAAwB,GAA6B;IACvD,oBAAoB,EAAE,CAAC,wBAAwB,CAAC;IAChD,mBAAmB,EAAE,CAAC,uBAAuB,CAAC;IAC9C,uBAAuB,EAAE,CAAC,2BAA2B,EAAE,oCAAoC,CAAC;IAC5F,sBAAsB,EAAE,CAAC,0BAA0B,CAAC;IACpD,sBAAsB,EAAE,CAAC,0BAA0B,CAAC;IACpD,wBAAwB,EAAE,CAAC,4BAA4B,CAAC;IACxD,sBAAsB,EAAE,CAAC,0BAA0B,CAAC;IACpD,sBAAsB,EAAE,CAAC,0BAA0B,CAAC;IACpD,mBAAmB,EAAE,CAAC,uBAAuB,CAAC;IAC9C,sBAAsB,EAAE,CAAC,0BAA0B,CAAC;CACvD,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAA2B;IAC3D,oBAAoB,EAAE,sBAAsB;IAC5C,mBAAmB,EAAE,2BAA2B;IAChD,uBAAuB,EAAE,wBAAwB;IACjD,sBAAsB,EAAE,yBAAyB;IACjD,sBAAsB,EAAE,wBAAwB;IAChD,wBAAwB,EAAE,yBAAyB;IACnD,sBAAsB,EAAE,mBAAmB;IAC3C,sBAAsB,EAAE,iCAAiC;IACzD,mBAAmB,EAAE,8BAA8B;IACnD,sBAAsB,EAAE,kBAAkB;CAC7C,CAAC;AAEF,wFAAwF;AACxF,MAAM,CAAC,MAAM,+BAA+B,GAAG,kBAAkB,CAAC;AAElE;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEI,IAAM,gBAAgB,GAAtB,MAAM,gBAAiB,SAAQ,UAA4B;IAA3D;;QAKK,aAAQ,GAA+B,EAAE,CAAC;QAC1C,eAAU,GAAwC,IAAI,GAAG,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"PermissionEngine.js","sourceRoot":"","sources":["../../src/engines/PermissionEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ export declare class ResourceTypeEngine extends BaseEngine<ResourceTypeEngine> {
|
|
|
24
24
|
static get Instance(): ResourceTypeEngine;
|
|
25
25
|
Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
26
26
|
get ResourceTypes(): MJResourceTypeEntity[];
|
|
27
|
-
private
|
|
27
|
+
private _resourceTypes;
|
|
28
28
|
/**
|
|
29
29
|
* Look up a row by exact `Name`. Returns `undefined` if the engine
|
|
30
30
|
* hasn't been configured yet or no row matches — callers should treat
|
|
@@ -22,7 +22,7 @@ import { BaseEngine } from "@memberjunction/core";
|
|
|
22
22
|
export class ResourceTypeEngine extends BaseEngine {
|
|
23
23
|
constructor() {
|
|
24
24
|
super(...arguments);
|
|
25
|
-
this.
|
|
25
|
+
this._resourceTypes = [];
|
|
26
26
|
}
|
|
27
27
|
static get Instance() {
|
|
28
28
|
return super.getInstance();
|
|
@@ -32,14 +32,14 @@ export class ResourceTypeEngine extends BaseEngine {
|
|
|
32
32
|
{
|
|
33
33
|
Type: 'entity',
|
|
34
34
|
EntityName: 'MJ: Resource Types',
|
|
35
|
-
PropertyName: '
|
|
35
|
+
PropertyName: '_resourceTypes',
|
|
36
36
|
CacheLocal: true,
|
|
37
37
|
},
|
|
38
38
|
];
|
|
39
39
|
await this.Load(c, provider, forceRefresh, contextUser);
|
|
40
40
|
}
|
|
41
41
|
get ResourceTypes() {
|
|
42
|
-
return this.GetConfigData('
|
|
42
|
+
return this.GetConfigData('_resourceTypes');
|
|
43
43
|
}
|
|
44
44
|
/**
|
|
45
45
|
* Look up a row by exact `Name`. Returns `undefined` if the engine
|
|
@@ -48,7 +48,7 @@ export class ResourceTypeEngine extends BaseEngine {
|
|
|
48
48
|
* persist rows with an undefined `ResourceTypeID`.
|
|
49
49
|
*/
|
|
50
50
|
ByName(name) {
|
|
51
|
-
return this.
|
|
51
|
+
return this._resourceTypes.find(rt => rt.Name === name);
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
//# sourceMappingURL=ResourceTypeEngine.js.map
|
|
@@ -7,6 +7,6 @@ export declare class TypeTablesCache extends BaseEngine<TypeTablesCache> {
|
|
|
7
7
|
Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
8
8
|
static get Instance(): TypeTablesCache;
|
|
9
9
|
get EntityRelationshipDisplayComponents(): MJEntityRelationshipDisplayComponentEntity[];
|
|
10
|
-
private
|
|
10
|
+
private _entityRelationshipDisplayComponents;
|
|
11
11
|
}
|
|
12
12
|
//# sourceMappingURL=TypeTablesCache.d.ts.map
|