@memberjunction/core 2.72.0 → 2.74.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.
Files changed (46) hide show
  1. package/dist/generic/applicationInfo.d.ts +92 -1
  2. package/dist/generic/applicationInfo.d.ts.map +1 -1
  3. package/dist/generic/applicationInfo.js +92 -1
  4. package/dist/generic/applicationInfo.js.map +1 -1
  5. package/dist/generic/baseInfo.d.ts +15 -0
  6. package/dist/generic/baseInfo.d.ts.map +1 -1
  7. package/dist/generic/baseInfo.js +15 -0
  8. package/dist/generic/baseInfo.js.map +1 -1
  9. package/dist/generic/entityInfo.d.ts +184 -3
  10. package/dist/generic/entityInfo.d.ts.map +1 -1
  11. package/dist/generic/entityInfo.js +184 -3
  12. package/dist/generic/entityInfo.js.map +1 -1
  13. package/dist/generic/interfaces.d.ts +119 -4
  14. package/dist/generic/interfaces.d.ts.map +1 -1
  15. package/dist/generic/interfaces.js +44 -3
  16. package/dist/generic/interfaces.js.map +1 -1
  17. package/dist/generic/providerBase.d.ts +248 -8
  18. package/dist/generic/providerBase.d.ts.map +1 -1
  19. package/dist/generic/providerBase.js +185 -2
  20. package/dist/generic/providerBase.js.map +1 -1
  21. package/dist/generic/queryInfo.d.ts +312 -1
  22. package/dist/generic/queryInfo.d.ts.map +1 -1
  23. package/dist/generic/queryInfo.js +371 -2
  24. package/dist/generic/queryInfo.js.map +1 -1
  25. package/dist/generic/querySQLFilters.d.ts +54 -0
  26. package/dist/generic/querySQLFilters.d.ts.map +1 -0
  27. package/dist/generic/querySQLFilters.js +84 -0
  28. package/dist/generic/querySQLFilters.js.map +1 -0
  29. package/dist/generic/runQuery.d.ts +42 -0
  30. package/dist/generic/runQuery.d.ts.map +1 -1
  31. package/dist/generic/runQuery.js +26 -0
  32. package/dist/generic/runQuery.js.map +1 -1
  33. package/dist/generic/runQuerySQLFilterImplementations.d.ts +51 -0
  34. package/dist/generic/runQuerySQLFilterImplementations.d.ts.map +1 -0
  35. package/dist/generic/runQuerySQLFilterImplementations.js +238 -0
  36. package/dist/generic/runQuerySQLFilterImplementations.js.map +1 -0
  37. package/dist/generic/securityInfo.d.ts +212 -13
  38. package/dist/generic/securityInfo.d.ts.map +1 -1
  39. package/dist/generic/securityInfo.js +200 -14
  40. package/dist/generic/securityInfo.js.map +1 -1
  41. package/dist/index.d.ts +4 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -0
  44. package/dist/index.js.map +1 -1
  45. package/package.json +2 -2
  46. package/readme.md +550 -1
@@ -1,30 +1,95 @@
1
1
  import { BaseInfo } from "./baseInfo";
2
2
  import { IMetadataProvider } from "./interfaces";
3
3
  /**
4
- * Information about a single user
4
+ * A list of all users who have or had access to the system.
5
+ * Contains user profile information, authentication details, and role assignments.
5
6
  */
6
7
  export declare class UserInfo extends BaseInfo {
8
+ /**
9
+ * Unique identifier for the user
10
+ */
7
11
  ID: string;
12
+ /**
13
+ * Name of the user that is used in various places in UIs/etc, can be anything including FirstLast, Email, a Handle, etc
14
+ */
8
15
  Name: string;
16
+ /**
17
+ * User's first name or given name
18
+ */
9
19
  FirstName: string;
20
+ /**
21
+ * User's last name or surname
22
+ */
10
23
  LastName: string;
24
+ /**
25
+ * User's professional title or salutation
26
+ */
11
27
  Title: string;
28
+ /**
29
+ * Unique email address for the user. This field must be unique across all users in the system
30
+ */
12
31
  Email: string;
32
+ /**
33
+ * User account type (User, Owner)
34
+ */
13
35
  Type: string;
36
+ /**
37
+ * Whether this user account is currently active and can log in
38
+ */
14
39
  IsActive: boolean;
40
+ /**
41
+ * Type of record this user is linked to (None, Employee, Contact, etc.)
42
+ */
15
43
  LinkedRecordType: 'None' | 'Employee' | 'Other';
44
+ /**
45
+ * Foreign key reference to the Employee entity
46
+ */
16
47
  EmployeeID: number;
48
+ /**
49
+ * Foreign key reference to the Entities table
50
+ */
17
51
  LinkedEntityID: number;
52
+ /**
53
+ * ID of the specific record this user is linked to
54
+ */
18
55
  LinkedEntityRecordID: number;
56
+ /**
57
+ * Timestamp when the user record was created
58
+ */
19
59
  __mj_CreatedAt: Date;
60
+ /**
61
+ * Timestamp when the user record was last updated
62
+ */
20
63
  __mj_UpdatedAt: Date;
64
+ /**
65
+ * Concatenated first and last name
66
+ */
21
67
  FirstLast: string;
68
+ /**
69
+ * Employee's concatenated first and last name
70
+ */
22
71
  EmployeeFirstLast: string;
72
+ /**
73
+ * Employee's email address
74
+ */
23
75
  EmployeeEmail: string;
76
+ /**
77
+ * Employee's job title
78
+ */
24
79
  EmployeeTitle: string;
80
+ /**
81
+ * Name of the employee's supervisor
82
+ */
25
83
  EmployeeSupervisor: string;
84
+ /**
85
+ * Email address of the employee's supervisor
86
+ */
26
87
  EmployeeSupervisorEmail: string;
27
88
  private _UserRoles;
89
+ /**
90
+ * Gets the roles assigned to this user.
91
+ * @returns {UserRoleInfo[]} Array of user role assignments
92
+ */
28
93
  get UserRoles(): UserRoleInfo[];
29
94
  /**
30
95
  * Constructs a new instance of the UserInfo class, optionally initializing it with the provided metadata and initial data.
@@ -36,66 +101,146 @@ export declare class UserInfo extends BaseInfo {
36
101
  constructor(md?: IMetadataProvider, initData?: any);
37
102
  }
38
103
  /**
39
- * Information about a role that a user is linked to
104
+ * Associates users with roles in the system, managing role-based access control and permission inheritance.
40
105
  */
41
106
  export declare class UserRoleInfo extends BaseInfo {
107
+ /**
108
+ * Foreign key reference to the Users table
109
+ */
42
110
  UserID: string;
111
+ /**
112
+ * Foreign key reference to the Roles table
113
+ */
43
114
  RoleID: string;
115
+ /**
116
+ * Timestamp when the user-role association was created
117
+ */
44
118
  __mj_CreatedAt: Date;
119
+ /**
120
+ * Timestamp when the user-role association was last updated
121
+ */
45
122
  __mj_UpdatedAt: Date;
123
+ /**
124
+ * Name of the user
125
+ */
46
126
  User: string;
127
+ /**
128
+ * Name of the role
129
+ */
47
130
  Role: string;
48
131
  constructor(initData: any);
49
132
  }
50
133
  /**
51
- * Information about a single role
134
+ * Roles are used for security administration and can have zero to many Users as members.
135
+ * Defines groups of permissions that can be assigned to multiple users.
52
136
  */
53
137
  export declare class RoleInfo extends BaseInfo {
138
+ /**
139
+ * Unique identifier for the role
140
+ */
54
141
  ID: string;
142
+ /**
143
+ * Name of the role
144
+ */
55
145
  Name: string;
146
+ /**
147
+ * Description of the role
148
+ */
56
149
  Description: string;
150
+ /**
151
+ * The unique ID of the role in the directory being used for authentication, for example an ID in Azure
152
+ */
57
153
  DirectoryID: string;
154
+ /**
155
+ * The name of the role in the database, this is used for auto-generating permission statements by CodeGen
156
+ */
58
157
  SQLName: string;
158
+ /**
159
+ * Timestamp when the role was created
160
+ */
59
161
  __mj_CreatedAt: Date;
162
+ /**
163
+ * Timestamp when the role was last updated
164
+ */
60
165
  __mj_UpdatedAt: Date;
61
166
  constructor(initData: any);
62
167
  }
168
+ /**
169
+ * Defines data access rules that filter records based on user context, implementing fine-grained security at the row level.
170
+ */
63
171
  export declare class RowLevelSecurityFilterInfo extends BaseInfo {
172
+ /**
173
+ * Unique identifier for the row level security filter
174
+ */
64
175
  ID: string;
176
+ /**
177
+ * Name of the row level security filter
178
+ */
65
179
  Name: string;
180
+ /**
181
+ * Description of the row level security filter
182
+ */
66
183
  Description: string;
184
+ /**
185
+ * SQL WHERE clause template that filters records based on user context variables
186
+ */
67
187
  FilterText: string;
188
+ /**
189
+ * Timestamp when the filter was created
190
+ */
68
191
  __mj_CreatedAt: Date;
192
+ /**
193
+ * Timestamp when the filter was last updated
194
+ */
69
195
  __mj_UpdatedAt: Date;
70
196
  constructor(initData: any);
197
+ /**
198
+ * Replaces user-specific tokens in the filter text with actual user values.
199
+ * Tokens are in the format {{UserFieldName}} where FieldName is any property of the UserInfo object.
200
+ * @param {UserInfo} user - The user whose properties will be substituted into the filter text
201
+ * @returns {string} The filter text with all user tokens replaced with actual values
202
+ */
71
203
  MarkupFilterText(user: UserInfo): string;
72
204
  }
73
205
  /**
74
- * Represents detailed information about an authorization in the system,
75
- * including its relationship to roles and the ability for a given user to execute actions that require this authorization.
76
- *
77
- **/
206
+ * Stores the fundamental permissions and access rights that can be granted to users and roles throughout the system.
207
+ */
78
208
  export declare class AuthorizationInfo extends BaseInfo {
209
+ /**
210
+ * Unique identifier for the authorization
211
+ */
79
212
  ID: string;
80
213
  /**
81
- * The unique identifier for the parent authorization, if applicable.
82
- * @type {string|null}
214
+ * The unique identifier for the parent authorization, if applicable
83
215
  */
84
216
  ParentID: string;
217
+ /**
218
+ * Name of the authorization
219
+ */
85
220
  Name: string;
86
221
  /**
87
- * Indicates whether the authorization is active.
88
- * @type {boolean|null}
222
+ * Indicates whether this authorization is currently active and can be granted to users or roles
89
223
  */
90
224
  IsActive: boolean;
91
225
  /**
92
- * Determines whether actions under this authorization will be logged for audit purposes.
93
- * @type {boolean|null}
226
+ * When set to 1, Audit Log records are created whenever this authorization is invoked for a user
94
227
  */
95
228
  UseAuditLog: boolean;
229
+ /**
230
+ * Description of the authorization
231
+ */
96
232
  Description: string;
233
+ /**
234
+ * Timestamp when the authorization was created
235
+ */
97
236
  __mj_CreatedAt: Date;
237
+ /**
238
+ * Timestamp when the authorization was last updated
239
+ */
98
240
  __mj_UpdatedAt: Date;
241
+ /**
242
+ * Name of the parent authorization
243
+ */
99
244
  Parent: string;
100
245
  private _AuthorizationRoles;
101
246
  get Roles(): AuthorizationRoleInfo[];
@@ -127,14 +272,41 @@ export declare const AuthorizationRoleType: {
127
272
  readonly Deny: "Deny";
128
273
  };
129
274
  export type AuthorizationRoleType = typeof AuthorizationRoleType[keyof typeof AuthorizationRoleType];
275
+ /**
276
+ * Links authorizations to roles, defining which permissions are granted to users assigned to specific roles in the system.
277
+ */
130
278
  export declare class AuthorizationRoleInfo extends BaseInfo {
279
+ /**
280
+ * Unique identifier for the authorization-role mapping
281
+ */
131
282
  ID: string;
283
+ /**
284
+ * Foreign key reference to the Authorizations table
285
+ */
132
286
  AuthorizationID: string;
287
+ /**
288
+ * Foreign key reference to the Roles table
289
+ */
133
290
  RoleID: string;
291
+ /**
292
+ * Specifies whether this authorization is granted to ('Allow') or explicitly denied ('Deny') for the role. Deny overrides Allow from all other roles a user may be part of
293
+ */
134
294
  Type: string;
295
+ /**
296
+ * Timestamp when the authorization-role mapping was created
297
+ */
135
298
  __mj_CreatedAt: Date;
299
+ /**
300
+ * Timestamp when the authorization-role mapping was last updated
301
+ */
136
302
  __mj_UpdatedAt: Date;
303
+ /**
304
+ * Name of the authorization
305
+ */
137
306
  Authorization: string;
307
+ /**
308
+ * Name of the role
309
+ */
138
310
  Role: string;
139
311
  private _RoleInfo;
140
312
  get RoleInfo(): RoleInfo;
@@ -142,14 +314,41 @@ export declare class AuthorizationRoleInfo extends BaseInfo {
142
314
  _setRole(role: RoleInfo): void;
143
315
  constructor(initData: any);
144
316
  }
317
+ /**
318
+ * Defines the types of events that can be recorded in the audit log, enabling categorization and filtering of system activities.
319
+ */
145
320
  export declare class AuditLogTypeInfo extends BaseInfo {
321
+ /**
322
+ * Unique identifier for the audit log type
323
+ */
146
324
  ID: string;
325
+ /**
326
+ * Foreign key reference to the parent Audit Log Type
327
+ */
147
328
  ParentID: string;
329
+ /**
330
+ * Name of the audit log type
331
+ */
148
332
  Name: string;
333
+ /**
334
+ * Description of the audit log type
335
+ */
149
336
  Description: string;
337
+ /**
338
+ * Name of the associated authorization
339
+ */
150
340
  AuthorizationName: string;
341
+ /**
342
+ * Timestamp when the audit log type was created
343
+ */
151
344
  __mj_CreatedAt: Date;
345
+ /**
346
+ * Timestamp when the audit log type was last updated
347
+ */
152
348
  __mj_UpdatedAt: Date;
349
+ /**
350
+ * Name of the parent audit log type
351
+ */
153
352
  Parent: string;
154
353
  constructor(initData: any);
155
354
  }
@@ -1 +1 @@
1
- {"version":3,"file":"securityInfo.d.ts","sourceRoot":"","sources":["../../src/generic/securityInfo.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"securityInfo.d.ts","sourceRoot":"","sources":["../../src/generic/securityInfo.ts"],"names":[],"mappings":"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"}