@memberjunction/core-entities 5.43.0 → 5.45.0
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/custom/MJUserViewEntityExtended.d.ts.map +1 -1
- package/dist/custom/MJUserViewEntityExtended.js +16 -6
- package/dist/custom/MJUserViewEntityExtended.js.map +1 -1
- package/dist/custom/PermissionProviders/AISkillPermissionProvider.d.ts +35 -0
- package/dist/custom/PermissionProviders/AISkillPermissionProvider.d.ts.map +1 -0
- package/dist/custom/PermissionProviders/AISkillPermissionProvider.js +155 -0
- package/dist/custom/PermissionProviders/AISkillPermissionProvider.js.map +1 -0
- package/dist/custom/PermissionProviders/index.d.ts +1 -0
- package/dist/custom/PermissionProviders/index.d.ts.map +1 -1
- package/dist/custom/PermissionProviders/index.js +3 -0
- package/dist/custom/PermissionProviders/index.js.map +1 -1
- package/dist/custom/ReadOnlyExternalBaseEntity.d.ts +42 -0
- package/dist/custom/ReadOnlyExternalBaseEntity.d.ts.map +1 -0
- package/dist/custom/ReadOnlyExternalBaseEntity.js +58 -0
- package/dist/custom/ReadOnlyExternalBaseEntity.js.map +1 -0
- package/dist/engines/ApplicationSettingEngine.js +1 -1
- package/dist/engines/ApplicationSettingEngine.js.map +1 -1
- package/dist/engines/AuditLogTypeEngine.js +1 -1
- package/dist/engines/AuditLogTypeEngine.js.map +1 -1
- package/dist/engines/MCPEngine.js +7 -7
- package/dist/engines/MCPEngine.js.map +1 -1
- package/dist/engines/PermissionEngine.d.ts.map +1 -1
- package/dist/engines/PermissionEngine.js +3 -1
- package/dist/engines/PermissionEngine.js.map +1 -1
- package/dist/engines/QueryEngine.js +14 -14
- package/dist/engines/QueryEngine.js.map +1 -1
- package/dist/engines/ResourceTypeEngine.js +1 -1
- package/dist/engines/ResourceTypeEngine.js.map +1 -1
- package/dist/engines/SearchEngineBase.js +7 -7
- package/dist/engines/SearchEngineBase.js.map +1 -1
- package/dist/engines/TypeTablesCache.js +1 -1
- package/dist/engines/TypeTablesCache.js.map +1 -1
- package/dist/engines/UserInfoEngine.d.ts +66 -0
- package/dist/engines/UserInfoEngine.d.ts.map +1 -1
- package/dist/engines/UserInfoEngine.js +123 -20
- package/dist/engines/UserInfoEngine.js.map +1 -1
- package/dist/engines/UserRoutineEngine.d.ts +88 -0
- package/dist/engines/UserRoutineEngine.d.ts.map +1 -0
- package/dist/engines/UserRoutineEngine.js +180 -0
- package/dist/engines/UserRoutineEngine.js.map +1 -0
- package/dist/engines/UserViewEngine.js +1 -1
- package/dist/engines/UserViewEngine.js.map +1 -1
- package/dist/engines/artifacts.js +3 -3
- package/dist/engines/artifacts.js.map +1 -1
- package/dist/engines/conversations.d.ts +19 -0
- package/dist/engines/conversations.d.ts.map +1 -1
- package/dist/engines/conversations.js +76 -4
- package/dist/engines/conversations.js.map +1 -1
- package/dist/engines/dashboards.js +8 -8
- package/dist/engines/dashboards.js.map +1 -1
- package/dist/engines/interactive-forms.js +2 -2
- package/dist/engines/interactive-forms.js.map +1 -1
- package/dist/generated/entity_subclasses.d.ts +5735 -393
- package/dist/generated/entity_subclasses.d.ts.map +1 -1
- package/dist/generated/entity_subclasses.js +26987 -19321
- package/dist/generated/entity_subclasses.js.map +1 -1
- package/dist/generated/remote_operations.d.ts +584 -1
- package/dist/generated/remote_operations.d.ts.map +1 -1
- package/dist/generated/remote_operations.js +181 -1
- package/dist/generated/remote_operations.js.map +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/package.json +5 -5
|
@@ -43,6 +43,9 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
43
43
|
this._UserNotificationPreferences = [];
|
|
44
44
|
// Application role assignments (global - not user-specific)
|
|
45
45
|
this._applicationRoles = [];
|
|
46
|
+
// Optional filters for customizing application access/admin checks (e.g., tenant-scoped roles)
|
|
47
|
+
this._applicationAccessFilter = null;
|
|
48
|
+
this._applicationAdminFilter = null;
|
|
46
49
|
// Track the user ID we loaded data for
|
|
47
50
|
this._loadedForUserId = null;
|
|
48
51
|
// Track in-progress CreateDefaultApplications call to prevent duplicate execution
|
|
@@ -136,6 +139,12 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
136
139
|
PropertyName: '_UserApplications',
|
|
137
140
|
CacheLocal: true,
|
|
138
141
|
Filter: userFilter,
|
|
142
|
+
// Short debounce (vs the 1500ms BaseEngine default). The app switcher, the
|
|
143
|
+
// Home dashboard, and the shell all derive their app lists from this cache
|
|
144
|
+
// via DataChange$, so a save from the app-config dialog should reach the UI
|
|
145
|
+
// near-instantly. Writes to this entity are rare and the per-user row set is
|
|
146
|
+
// tiny, so an occasional extra refresh costs nothing.
|
|
147
|
+
DebounceTime: 200,
|
|
139
148
|
},
|
|
140
149
|
{
|
|
141
150
|
Type: 'entity',
|
|
@@ -205,7 +214,7 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
205
214
|
get UserNotifications() {
|
|
206
215
|
if (!this._loadedForUserId)
|
|
207
216
|
return [];
|
|
208
|
-
return
|
|
217
|
+
return this.GetConfigData('_UserNotifications')
|
|
209
218
|
.filter((n) => UUIDsEqual(n.UserID, this._loadedForUserId))
|
|
210
219
|
.sort((a, b) => new Date(b.Get('__mj_CreatedAt')).getTime() - new Date(a.Get('__mj_CreatedAt')).getTime());
|
|
211
220
|
}
|
|
@@ -215,7 +224,8 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
215
224
|
get UserSettings() {
|
|
216
225
|
if (!this._loadedForUserId)
|
|
217
226
|
return [];
|
|
218
|
-
return
|
|
227
|
+
return this.GetConfigData('_UserSettings')
|
|
228
|
+
.filter((s) => UUIDsEqual(s.UserID, this._loadedForUserId));
|
|
219
229
|
}
|
|
220
230
|
/**
|
|
221
231
|
* Get a user setting value by key.
|
|
@@ -456,7 +466,8 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
456
466
|
get Workspaces() {
|
|
457
467
|
if (!this._loadedForUserId)
|
|
458
468
|
return [];
|
|
459
|
-
return
|
|
469
|
+
return this.GetConfigData('_Workspaces')
|
|
470
|
+
.filter((w) => UUIDsEqual(w.UserID, this._loadedForUserId));
|
|
460
471
|
}
|
|
461
472
|
/**
|
|
462
473
|
* Get the current user's primary workspace (first one if multiple exist)
|
|
@@ -471,7 +482,7 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
471
482
|
get UserApplications() {
|
|
472
483
|
if (!this._loadedForUserId)
|
|
473
484
|
return [];
|
|
474
|
-
return
|
|
485
|
+
return this.GetConfigData('_UserApplications')
|
|
475
486
|
.filter((ua) => UUIDsEqual(ua.UserID, this._loadedForUserId))
|
|
476
487
|
.sort((a, b) => {
|
|
477
488
|
// Sort by Sequence first, then by Application name
|
|
@@ -487,7 +498,7 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
487
498
|
get UserFavorites() {
|
|
488
499
|
if (!this._loadedForUserId)
|
|
489
500
|
return [];
|
|
490
|
-
return
|
|
501
|
+
return this.GetConfigData('_UserFavorites')
|
|
491
502
|
.filter((f) => UUIDsEqual(f.UserID, this._loadedForUserId))
|
|
492
503
|
.sort((a, b) => new Date(b.Get('__mj_CreatedAt')).getTime() - new Date(a.Get('__mj_CreatedAt')).getTime());
|
|
493
504
|
}
|
|
@@ -497,7 +508,7 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
497
508
|
get UserRecordLogs() {
|
|
498
509
|
if (!this._loadedForUserId)
|
|
499
510
|
return [];
|
|
500
|
-
return
|
|
511
|
+
return this.GetConfigData('_UserRecordLogs')
|
|
501
512
|
.filter((r) => UUIDsEqual(r.UserID, this._loadedForUserId))
|
|
502
513
|
.sort((a, b) => new Date(b.LatestAt).getTime() - new Date(a.LatestAt).getTime());
|
|
503
514
|
}
|
|
@@ -509,14 +520,14 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
509
520
|
* Useful for server-side admin scenarios.
|
|
510
521
|
*/
|
|
511
522
|
get AllNotifications() {
|
|
512
|
-
return this._UserNotifications
|
|
523
|
+
return this.GetConfigData('_UserNotifications');
|
|
513
524
|
}
|
|
514
525
|
/**
|
|
515
526
|
* Get ALL user applications in the cache (unfiltered by user).
|
|
516
527
|
* Useful for server-side admin scenarios.
|
|
517
528
|
*/
|
|
518
529
|
get AllUserApplications() {
|
|
519
|
-
return this._UserApplications
|
|
530
|
+
return this.GetConfigData('_UserApplications');
|
|
520
531
|
}
|
|
521
532
|
/**
|
|
522
533
|
* Get notifications for a specific user
|
|
@@ -615,6 +626,42 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
615
626
|
get ApplicationRoles() {
|
|
616
627
|
return this._applicationRoles;
|
|
617
628
|
}
|
|
629
|
+
/**
|
|
630
|
+
* Register a custom filter for application access checks. The filter is
|
|
631
|
+
* called by `UserHasApplicationAccess()` after the default global role check.
|
|
632
|
+
* It receives the default result and can override it based on custom logic
|
|
633
|
+
* (e.g., tenant-scoped roles, feature flags, license restrictions).
|
|
634
|
+
*
|
|
635
|
+
* Only one filter can be registered at a time. Calling this again replaces
|
|
636
|
+
* the previous filter. Pass `null` to remove the filter.
|
|
637
|
+
*
|
|
638
|
+
* @example
|
|
639
|
+
* ```typescript
|
|
640
|
+
* // Multi-tenant: scope access to the current tenant's role instead of the global union
|
|
641
|
+
* UserInfoEngine.Instance.RegisterApplicationAccessFilter((appId, defaultAccess, user) => {
|
|
642
|
+
* const tenantRoleID = user.TenantContext?.roleID;
|
|
643
|
+
* if (!tenantRoleID) return defaultAccess; // no tenant context — fall back to default
|
|
644
|
+
* const appRoles = UserInfoEngine.Instance.ApplicationRoles
|
|
645
|
+
* .filter(ar => UUIDsEqual(ar.ApplicationID, appId));
|
|
646
|
+
* if (appRoles.length === 0) return true; // open access
|
|
647
|
+
* return appRoles.some(ar => UUIDsEqual(ar.RoleID, tenantRoleID) && ar.CanAccess);
|
|
648
|
+
* });
|
|
649
|
+
* ```
|
|
650
|
+
*/
|
|
651
|
+
RegisterApplicationAccessFilter(filter) {
|
|
652
|
+
this._applicationAccessFilter = filter;
|
|
653
|
+
}
|
|
654
|
+
/**
|
|
655
|
+
* Register a custom filter for application admin checks. The filter is
|
|
656
|
+
* called by `UserCanAdminApplication()` after the default global role check.
|
|
657
|
+
* It receives the default result and can override it based on custom logic.
|
|
658
|
+
*
|
|
659
|
+
* Only one filter can be registered at a time. Calling this again replaces
|
|
660
|
+
* the previous filter. Pass `null` to remove the filter.
|
|
661
|
+
*/
|
|
662
|
+
RegisterApplicationAdminFilter(filter) {
|
|
663
|
+
this._applicationAdminFilter = filter;
|
|
664
|
+
}
|
|
618
665
|
/**
|
|
619
666
|
* Checks if the current user's roles grant access to the application.
|
|
620
667
|
* If no ApplicationRole records exist for the app, access is open (backwards compatible).
|
|
@@ -622,15 +669,25 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
622
669
|
*/
|
|
623
670
|
UserHasApplicationAccess(applicationId) {
|
|
624
671
|
const appRoles = this._applicationRoles.filter(ar => UUIDsEqual(ar.ApplicationID, applicationId));
|
|
672
|
+
const md = this.ProviderToUse;
|
|
673
|
+
const user = md.CurrentUser;
|
|
625
674
|
// No role records = open access (backwards compatible)
|
|
626
|
-
if (appRoles.length === 0)
|
|
675
|
+
if (appRoles.length === 0) {
|
|
676
|
+
// Still call filter — it may want to restrict open-access apps
|
|
677
|
+
if (this._applicationAccessFilter && user) {
|
|
678
|
+
return this._applicationAccessFilter(applicationId, true, user);
|
|
679
|
+
}
|
|
627
680
|
return true;
|
|
681
|
+
}
|
|
628
682
|
// Check if any of the user's roles have CanAccess=1
|
|
629
|
-
const md = this.ProviderToUse;
|
|
630
|
-
const user = md.CurrentUser;
|
|
631
683
|
if (!user || !user.UserRoles)
|
|
632
684
|
return false;
|
|
633
|
-
|
|
685
|
+
const defaultAccess = user.UserRoles.some(ur => appRoles.some(ar => UUIDsEqual(ar.RoleID, ur.RoleID) && ar.CanAccess));
|
|
686
|
+
// Call through registered filter if present
|
|
687
|
+
if (this._applicationAccessFilter) {
|
|
688
|
+
return this._applicationAccessFilter(applicationId, defaultAccess, user);
|
|
689
|
+
}
|
|
690
|
+
return defaultAccess;
|
|
634
691
|
}
|
|
635
692
|
/**
|
|
636
693
|
* Checks if the current user can administer a specific application.
|
|
@@ -638,13 +695,23 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
638
695
|
*/
|
|
639
696
|
UserCanAdminApplication(applicationId) {
|
|
640
697
|
const appRoles = this._applicationRoles.filter(ar => UUIDsEqual(ar.ApplicationID, applicationId));
|
|
641
|
-
if (appRoles.length === 0)
|
|
642
|
-
return false; // No admin without explicit grant
|
|
643
698
|
const md = this.ProviderToUse;
|
|
644
699
|
const user = md.CurrentUser;
|
|
700
|
+
if (appRoles.length === 0) {
|
|
701
|
+
// No admin without explicit grant — but still let filter override
|
|
702
|
+
if (this._applicationAdminFilter && user) {
|
|
703
|
+
return this._applicationAdminFilter(applicationId, false, user);
|
|
704
|
+
}
|
|
705
|
+
return false;
|
|
706
|
+
}
|
|
645
707
|
if (!user || !user.UserRoles)
|
|
646
708
|
return false;
|
|
647
|
-
|
|
709
|
+
const defaultCanAdmin = user.UserRoles.some(ur => appRoles.some(ar => UUIDsEqual(ar.RoleID, ur.RoleID) && ar.CanAdmin));
|
|
710
|
+
// Call through registered filter if present
|
|
711
|
+
if (this._applicationAdminFilter) {
|
|
712
|
+
return this._applicationAdminFilter(applicationId, defaultCanAdmin, user);
|
|
713
|
+
}
|
|
714
|
+
return defaultCanAdmin;
|
|
648
715
|
}
|
|
649
716
|
/**
|
|
650
717
|
* Check if an application is inactive in the system metadata.
|
|
@@ -730,8 +797,15 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
730
797
|
if (existingApp.IsActive) {
|
|
731
798
|
return existingApp;
|
|
732
799
|
}
|
|
733
|
-
// If disabled, enable it
|
|
800
|
+
// If disabled, enable it — with a FRESH sequence. The row keeps its stale
|
|
801
|
+
// Sequence from when it was deactivated (the app-config dialog parks removed
|
|
802
|
+
// apps at 999), and re-activating with that value can collide with another
|
|
803
|
+
// row's Sequence. Duplicate Sequences make value-swap reordering a silent
|
|
804
|
+
// no-op downstream (issue #3027), so re-enabling always appends to the end.
|
|
734
805
|
try {
|
|
806
|
+
// Compute BEFORE flipping IsActive — the sequence comes from the ACTIVE rows'
|
|
807
|
+
// max, and this row's own stale/parked value must not participate.
|
|
808
|
+
existingApp.Sequence = this.nextUserApplicationSequence();
|
|
735
809
|
existingApp.IsActive = true;
|
|
736
810
|
const saved = await existingApp.Save();
|
|
737
811
|
if (saved) {
|
|
@@ -748,8 +822,9 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
748
822
|
return null;
|
|
749
823
|
}
|
|
750
824
|
}
|
|
751
|
-
// Get the next sequence number
|
|
752
|
-
|
|
825
|
+
// Get the next sequence number (max+1 — a row COUNT can collide with an
|
|
826
|
+
// existing Sequence when the set is sparse, e.g. rows at [0, 1, 3])
|
|
827
|
+
const nextSequence = this.nextUserApplicationSequence();
|
|
753
828
|
try {
|
|
754
829
|
const userApp = await md.GetEntityObject('MJ: User Applications', contextUser);
|
|
755
830
|
userApp.NewRecord();
|
|
@@ -791,6 +866,12 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
791
866
|
return true;
|
|
792
867
|
}
|
|
793
868
|
try {
|
|
869
|
+
// Fresh sequence on re-activation — the row's stale Sequence (e.g. the
|
|
870
|
+
// dialog's 999 park value) can collide with another row's and make
|
|
871
|
+
// value-swap reordering a silent no-op (issue #3027). Append to the end.
|
|
872
|
+
// Compute BEFORE flipping IsActive so this row's own stale value doesn't
|
|
873
|
+
// participate in the active-rows max.
|
|
874
|
+
userApp.Sequence = this.nextUserApplicationSequence();
|
|
794
875
|
userApp.IsActive = true;
|
|
795
876
|
const saved = await userApp.Save();
|
|
796
877
|
if (saved) {
|
|
@@ -807,6 +888,18 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
807
888
|
return false;
|
|
808
889
|
}
|
|
809
890
|
}
|
|
891
|
+
/**
|
|
892
|
+
* Next Sequence value for the current user's UserApplication rows: one past the
|
|
893
|
+
* highest Sequence among ACTIVE rows, so a newly created or re-activated row
|
|
894
|
+
* appends to the end of the visible list without colliding. Inactive rows are
|
|
895
|
+
* excluded — they carry parked values (the app-config dialog uses 999) that
|
|
896
|
+
* would otherwise inflate every subsequent assignment past the park value.
|
|
897
|
+
* Callers re-activating a row must call this BEFORE setting IsActive = true.
|
|
898
|
+
*/
|
|
899
|
+
nextUserApplicationSequence() {
|
|
900
|
+
const activeSequences = this.UserApplications.filter((ua) => ua.IsActive).map((ua) => ua.Sequence);
|
|
901
|
+
return activeSequences.length > 0 ? Math.max(...activeSequences) + 1 : 0;
|
|
902
|
+
}
|
|
810
903
|
/**
|
|
811
904
|
* Disable an application for the current user (set IsActive = false).
|
|
812
905
|
* This does not delete the UserApplication record, just deactivates it.
|
|
@@ -860,6 +953,15 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
860
953
|
const index = this._UserApplications.findIndex((ua) => UUIDsEqual(ua.ApplicationID, applicationId));
|
|
861
954
|
if (index >= 0) {
|
|
862
955
|
this._UserApplications.splice(index, 1);
|
|
956
|
+
// The debounced BaseEngine delete handler stays silent for rows already absent
|
|
957
|
+
// from the array (it can't distinguish "we spliced it" from "never matched the
|
|
958
|
+
// config's Filter"), so the code that spliced must notify observers itself —
|
|
959
|
+
// otherwise DataChange$ consumers (ApplicationManager → app switcher / Home)
|
|
960
|
+
// never learn the app was removed.
|
|
961
|
+
const config = this.Configs.find((c) => c.PropertyName === '_UserApplications');
|
|
962
|
+
if (config) {
|
|
963
|
+
this.notifyAlreadyAppliedMutation(config, 'delete', userApp);
|
|
964
|
+
}
|
|
863
965
|
}
|
|
864
966
|
console.log(`UserInfoEngine.UninstallApplication: Uninstalled application ${applicationId}`);
|
|
865
967
|
return true;
|
|
@@ -991,7 +1093,8 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
991
1093
|
get NotificationPreferences() {
|
|
992
1094
|
if (!this._loadedForUserId)
|
|
993
1095
|
return [];
|
|
994
|
-
return
|
|
1096
|
+
return this.GetConfigData('_UserNotificationPreferences')
|
|
1097
|
+
.filter((p) => UUIDsEqual(p.UserID, this._loadedForUserId));
|
|
995
1098
|
}
|
|
996
1099
|
GetUserPreferenceForType(userId, typeId) {
|
|
997
1100
|
return (this._UserNotificationPreferences || []).find((p) => UUIDsEqual(p.UserID, userId) && UUIDsEqual(p.NotificationTypeID, typeId));
|
|
@@ -1009,7 +1112,7 @@ let UserInfoEngine = class UserInfoEngine extends BaseEngine {
|
|
|
1009
1112
|
* Notification types are global (not user-specific) and define the available notification categories.
|
|
1010
1113
|
*/
|
|
1011
1114
|
get NotificationTypes() {
|
|
1012
|
-
return this._NotificationTypes
|
|
1115
|
+
return this.GetConfigData('_NotificationTypes');
|
|
1013
1116
|
}
|
|
1014
1117
|
};
|
|
1015
1118
|
UserInfoEngine = __decorate([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserInfoEngine.js","sourceRoot":"","sources":["../../src/engines/UserInfoEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"UserInfoEngine.js","sourceRoot":"","sources":["../../src/engines/UserInfoEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { BaseEngine, IMetadataProvider, UserInfo } from '@memberjunction/core';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { MJUserRoutineEntity, MJUserRoutineRecipientEntity, MJUserRoutineRunEntity } from '../generated/entity_subclasses.js';
|
|
4
|
+
/**
|
|
5
|
+
* UserRoutineEngine provides centralized, cached access to the current user's
|
|
6
|
+
* User Routines ("MJ: User Routines"), their notification recipients, and their
|
|
7
|
+
* recent runs. It is the single data source the User Routines UI widgets consume —
|
|
8
|
+
* components should NOT issue ad-hoc RunViews for data this engine already caches.
|
|
9
|
+
*
|
|
10
|
+
* Unlike {@link UserInfoEngine} this engine is NOT auto-configured at startup —
|
|
11
|
+
* routines are a lazily-entered surface, so every consumer calls
|
|
12
|
+
* `await UserRoutineEngine.Instance.Config(false, user, provider)` on entry
|
|
13
|
+
* (a no-op once loaded).
|
|
14
|
+
*
|
|
15
|
+
* All three configs load UNFILTERED (client and server alike) and the public
|
|
16
|
+
* getters scope to the loaded user. Unfiltered + unordered configs are the
|
|
17
|
+
* canonical BaseEngine shape: the engine maintains the arrays IN PLACE on
|
|
18
|
+
* save / delete / remote-invalidate entity events — no filter snapshot to go
|
|
19
|
+
* stale after creating or deleting a routine, and no full-refresh churn.
|
|
20
|
+
* Row-level visibility is the server's job (entity permissions / RLS), not a
|
|
21
|
+
* client-side Filter's.
|
|
22
|
+
*
|
|
23
|
+
* Usage:
|
|
24
|
+
* ```typescript
|
|
25
|
+
* const engine = UserRoutineEngine.Instance;
|
|
26
|
+
* await engine.Config(false, currentUser, provider);
|
|
27
|
+
* const routines = engine.Routines; // current user's routines
|
|
28
|
+
* const runs = engine.RunsForRoutine(routineId); // most recent first
|
|
29
|
+
* engine.Routines$.subscribe(r => ...); // reactive updates
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare class UserRoutineEngine extends BaseEngine<UserRoutineEngine> {
|
|
33
|
+
/**
|
|
34
|
+
* Returns the global instance of the class. This is a singleton class, so there is
|
|
35
|
+
* only one instance of it in the application. Do not directly create new instances
|
|
36
|
+
* of it, always use this method (or `GetProviderInstance` for non-default providers).
|
|
37
|
+
*/
|
|
38
|
+
static get Instance(): UserRoutineEngine;
|
|
39
|
+
private _Routines;
|
|
40
|
+
private _Recipients;
|
|
41
|
+
private _Runs;
|
|
42
|
+
private _loadedForUserId;
|
|
43
|
+
/**
|
|
44
|
+
* Configures the engine by loading the current user's routines, recipients, and runs.
|
|
45
|
+
*
|
|
46
|
+
* @param forceRefresh - If true, forces a refresh from the server even if data is cached
|
|
47
|
+
* @param contextUser - The user context (required for server-side, auto-detected on client)
|
|
48
|
+
* @param provider - Optional custom metadata provider
|
|
49
|
+
*/
|
|
50
|
+
Config(forceRefresh?: boolean, contextUser?: UserInfo, provider?: IMetadataProvider): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Observable stream of the routines cache. Emits the current (raw/unfiltered) array on
|
|
53
|
+
* subscribe and re-emits on save / delete / remote-invalidate / refresh. Consumers that
|
|
54
|
+
* need the per-user view should read the {@link Routines} getter inside the subscription.
|
|
55
|
+
*/
|
|
56
|
+
get Routines$(): Observable<MJUserRoutineEntity[]>;
|
|
57
|
+
/** Observable stream of the recipients cache (raw). */
|
|
58
|
+
get Recipients$(): Observable<MJUserRoutineRecipientEntity[]>;
|
|
59
|
+
/** Observable stream of the runs cache (raw). */
|
|
60
|
+
get Runs$(): Observable<MJUserRoutineRunEntity[]>;
|
|
61
|
+
/** The loaded user's routines, sorted by name. */
|
|
62
|
+
get Routines(): MJUserRoutineEntity[];
|
|
63
|
+
/** All recipients across the loaded user's routines. */
|
|
64
|
+
get Recipients(): MJUserRoutineRecipientEntity[];
|
|
65
|
+
/**
|
|
66
|
+
* Recent runs across the loaded user's routines, most recent first (capped at
|
|
67
|
+
* {@link RECENT_RUNS_CAP} rows client-side).
|
|
68
|
+
*/
|
|
69
|
+
get RecentRuns(): MJUserRoutineRunEntity[];
|
|
70
|
+
/** A routine by ID (loaded user's routines only). */
|
|
71
|
+
GetRoutineByID(routineId: string): MJUserRoutineEntity | undefined;
|
|
72
|
+
/** Runs for one routine, most recent first. */
|
|
73
|
+
RunsForRoutine(routineId: string, maxRuns?: number): MJUserRoutineRunEntity[];
|
|
74
|
+
/** Recipients for one routine, in Sequence order. */
|
|
75
|
+
RecipientsForRoutine(routineId: string): MJUserRoutineRecipientEntity[];
|
|
76
|
+
/** Routines for an arbitrary user (server-side / admin scenarios; raw cache scan). */
|
|
77
|
+
GetRoutinesForUser(userId: string): MJUserRoutineEntity[];
|
|
78
|
+
/** The user ID this engine was loaded for. */
|
|
79
|
+
get LoadedForUserId(): string | null;
|
|
80
|
+
/**
|
|
81
|
+
* Force-refreshes all cached data from the server. Rarely needed — the unfiltered
|
|
82
|
+
* configs are maintained in place on entity events — but useful as an explicit
|
|
83
|
+
* "pull latest" (e.g. the UI's refresh button picking up dispatcher-written runs).
|
|
84
|
+
*/
|
|
85
|
+
Refresh(contextUser?: UserInfo): Promise<void>;
|
|
86
|
+
private loadedRoutineIdSet;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=UserRoutineEngine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"UserRoutineEngine.d.ts","sourceRoot":"","sources":["../../src/engines/UserRoutineEngine.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAEV,iBAAiB,EACjB,QAAQ,EACT,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAElC,OAAO,EACL,mBAAmB,EACnB,4BAA4B,EAC5B,sBAAsB,EACvB,MAAM,gCAAgC,CAAC;AAKxC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,qBAAa,iBAAkB,SAAQ,UAAU,CAAC,iBAAiB,CAAC;IAClE;;;;OAIG;IACH,WAAkB,QAAQ,IAAI,iBAAiB,CAE9C;IAGD,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,WAAW,CAAsC;IACzD,OAAO,CAAC,KAAK,CAAgC;IAG7C,OAAO,CAAC,gBAAgB,CAAuB;IAE/C;;;;;;OAMG;IACU,MAAM,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA0ChH;;;;OAIG;IACH,IAAW,SAAS,IAAI,UAAU,CAAC,mBAAmB,EAAE,CAAC,CAExD;IAED,uDAAuD;IACvD,IAAW,WAAW,IAAI,UAAU,CAAC,4BAA4B,EAAE,CAAC,CAEnE;IAED,iDAAiD;IACjD,IAAW,KAAK,IAAI,UAAU,CAAC,sBAAsB,EAAE,CAAC,CAEvD;IAMD,kDAAkD;IAClD,IAAW,QAAQ,IAAI,mBAAmB,EAAE,CAK3C;IAED,wDAAwD;IACxD,IAAW,UAAU,IAAI,4BAA4B,EAAE,CAKtD;IAED;;;OAGG;IACH,IAAW,UAAU,IAAI,sBAAsB,EAAE,CAMhD;IAMD,qDAAqD;IAC9C,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS;IAIzE,+CAA+C;IACxC,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,sBAAsB,EAAE;IAOpF,qDAAqD;IAC9C,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,4BAA4B,EAAE;IAM9E,sFAAsF;IAC/E,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,EAAE;IAMhE,8CAA8C;IAC9C,IAAW,eAAe,IAAI,MAAM,GAAG,IAAI,CAE1C;IAED;;;;OAIG;IACU,OAAO,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3D,OAAO,CAAC,kBAAkB;CAG3B"}
|