@budibase/types 2.3.18-alpha.2 → 2.3.18-alpha.21

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 (83) hide show
  1. package/dist/api/web/global/auditLogs.d.ts +39 -0
  2. package/dist/api/web/global/auditLogs.js +8 -0
  3. package/dist/api/web/global/auditLogs.js.map +1 -0
  4. package/dist/api/web/global/configs.d.ts +19 -0
  5. package/dist/api/web/global/configs.js +3 -0
  6. package/dist/api/web/global/configs.js.map +1 -0
  7. package/dist/api/web/global/index.d.ts +2 -0
  8. package/dist/api/web/global/index.js +2 -0
  9. package/dist/api/web/global/index.js.map +1 -1
  10. package/dist/api/web/index.d.ts +1 -0
  11. package/dist/api/web/index.js +1 -0
  12. package/dist/api/web/index.js.map +1 -1
  13. package/dist/api/web/pagination.d.ts +23 -0
  14. package/dist/api/web/pagination.js +14 -0
  15. package/dist/api/web/pagination.js.map +1 -0
  16. package/dist/api/web/user.d.ts +2 -1
  17. package/dist/documents/global/auditLogs.d.ts +11 -0
  18. package/dist/documents/global/auditLogs.js +5 -0
  19. package/dist/documents/global/auditLogs.js.map +1 -0
  20. package/dist/documents/global/config.d.ts +34 -18
  21. package/dist/documents/global/config.js.map +1 -1
  22. package/dist/documents/global/index.d.ts +1 -0
  23. package/dist/documents/global/index.js +1 -0
  24. package/dist/documents/global/index.js.map +1 -1
  25. package/dist/sdk/auditLogs.d.ts +14 -0
  26. package/dist/sdk/auditLogs.js +3 -0
  27. package/dist/sdk/auditLogs.js.map +1 -0
  28. package/dist/sdk/context.d.ts +2 -1
  29. package/dist/sdk/db.d.ts +18 -1
  30. package/dist/sdk/db.js +6 -1
  31. package/dist/sdk/db.js.map +1 -1
  32. package/dist/sdk/events/app.d.ts +33 -0
  33. package/dist/sdk/events/auditLog.d.ts +8 -0
  34. package/dist/sdk/events/auditLog.js +3 -0
  35. package/dist/sdk/events/auditLog.js.map +1 -0
  36. package/dist/sdk/events/auth.d.ts +6 -0
  37. package/dist/sdk/events/automation.d.ts +12 -0
  38. package/dist/sdk/events/backup.d.ts +2 -0
  39. package/dist/sdk/events/event.d.ts +7 -1
  40. package/dist/sdk/events/event.js +160 -1
  41. package/dist/sdk/events/event.js.map +1 -1
  42. package/dist/sdk/events/identification.d.ts +5 -0
  43. package/dist/sdk/events/index.d.ts +1 -0
  44. package/dist/sdk/events/index.js +1 -0
  45. package/dist/sdk/events/index.js.map +1 -1
  46. package/dist/sdk/events/screen.d.ts +6 -0
  47. package/dist/sdk/events/table.d.ts +15 -0
  48. package/dist/sdk/events/user.d.ts +36 -0
  49. package/dist/sdk/events/userGroup.d.ts +22 -0
  50. package/dist/sdk/index.d.ts +1 -0
  51. package/dist/sdk/index.js +1 -0
  52. package/dist/sdk/index.js.map +1 -1
  53. package/dist/sdk/licensing/feature.d.ts +3 -1
  54. package/dist/sdk/licensing/feature.js +2 -0
  55. package/dist/sdk/licensing/feature.js.map +1 -1
  56. package/dist/tsconfig.build.tsbuildinfo +1 -1
  57. package/package.json +2 -2
  58. package/src/api/web/global/auditLogs.ts +44 -0
  59. package/src/api/web/global/configs.ts +23 -0
  60. package/src/api/web/global/index.ts +2 -0
  61. package/src/api/web/index.ts +1 -0
  62. package/src/api/web/pagination.ts +27 -0
  63. package/src/api/web/user.ts +2 -1
  64. package/src/documents/global/auditLogs.ts +13 -0
  65. package/src/documents/global/config.ts +38 -19
  66. package/src/documents/global/index.ts +1 -0
  67. package/src/sdk/auditLogs.ts +21 -0
  68. package/src/sdk/context.ts +2 -1
  69. package/src/sdk/db.ts +19 -1
  70. package/src/sdk/events/app.ts +33 -0
  71. package/src/sdk/events/auditLog.ts +10 -0
  72. package/src/sdk/events/auth.ts +6 -0
  73. package/src/sdk/events/automation.ts +12 -0
  74. package/src/sdk/events/backup.ts +2 -0
  75. package/src/sdk/events/event.ts +189 -0
  76. package/src/sdk/events/identification.ts +6 -0
  77. package/src/sdk/events/index.ts +1 -0
  78. package/src/sdk/events/screen.ts +6 -0
  79. package/src/sdk/events/table.ts +15 -0
  80. package/src/sdk/events/user.ts +38 -1
  81. package/src/sdk/events/userGroup.ts +23 -0
  82. package/src/sdk/index.ts +1 -0
  83. package/src/sdk/licensing/feature.ts +2 -0
@@ -3,50 +3,83 @@ import { BaseEvent } from "./event"
3
3
  export interface AppCreatedEvent extends BaseEvent {
4
4
  appId: string
5
5
  version: string
6
+ audited: {
7
+ name: string
8
+ }
6
9
  }
7
10
 
8
11
  export interface AppUpdatedEvent extends BaseEvent {
9
12
  appId: string
10
13
  version: string
14
+ audited: {
15
+ name: string
16
+ }
11
17
  }
12
18
 
13
19
  export interface AppDeletedEvent extends BaseEvent {
14
20
  appId: string
21
+ audited: {
22
+ name: string
23
+ }
15
24
  }
16
25
 
17
26
  export interface AppPublishedEvent extends BaseEvent {
18
27
  appId: string
28
+ audited: {
29
+ name: string
30
+ }
19
31
  }
20
32
 
21
33
  export interface AppUnpublishedEvent extends BaseEvent {
22
34
  appId: string
35
+ audited: {
36
+ name: string
37
+ }
23
38
  }
24
39
 
25
40
  export interface AppFileImportedEvent extends BaseEvent {
26
41
  appId: string
42
+ audited: {
43
+ name: string
44
+ }
27
45
  }
28
46
 
29
47
  export interface AppTemplateImportedEvent extends BaseEvent {
30
48
  appId: string
31
49
  templateKey: string
50
+ audited: {
51
+ name: string
52
+ }
32
53
  }
33
54
 
34
55
  export interface AppVersionUpdatedEvent extends BaseEvent {
35
56
  appId: string
36
57
  currentVersion: string
37
58
  updatedToVersion: string
59
+ audited: {
60
+ name: string
61
+ }
38
62
  }
39
63
 
40
64
  export interface AppVersionRevertedEvent extends BaseEvent {
41
65
  appId: string
42
66
  currentVersion: string
43
67
  revertedToVersion: string
68
+ audited: {
69
+ name: string
70
+ }
44
71
  }
45
72
 
46
73
  export interface AppRevertedEvent extends BaseEvent {
47
74
  appId: string
75
+ audited: {
76
+ name: string
77
+ }
48
78
  }
49
79
 
50
80
  export interface AppExportedEvent extends BaseEvent {
51
81
  appId: string
82
+ audited: {
83
+ name: string
84
+ }
52
85
  }
@@ -0,0 +1,10 @@
1
+ import { BaseEvent } from "./event"
2
+ import { AuditLogSearchParams } from "../../api"
3
+
4
+ export interface AuditLogFilteredEvent extends BaseEvent {
5
+ filters: AuditLogSearchParams
6
+ }
7
+
8
+ export interface AuditLogDownloadedEvent extends BaseEvent {
9
+ filters: AuditLogSearchParams
10
+ }
@@ -7,10 +7,16 @@ export type SSOType = ConfigType.OIDC | ConfigType.GOOGLE
7
7
  export interface LoginEvent extends BaseEvent {
8
8
  userId: string
9
9
  source: LoginSource
10
+ audited: {
11
+ email: string
12
+ }
10
13
  }
11
14
 
12
15
  export interface LogoutEvent extends BaseEvent {
13
16
  userId: string
17
+ audited: {
18
+ email?: string
19
+ }
14
20
  }
15
21
 
16
22
  export interface SSOCreatedEvent extends BaseEvent {
@@ -5,6 +5,9 @@ export interface AutomationCreatedEvent extends BaseEvent {
5
5
  automationId: string
6
6
  triggerId: string
7
7
  triggerType: string
8
+ audited: {
9
+ name: string
10
+ }
8
11
  }
9
12
 
10
13
  export interface AutomationTriggerUpdatedEvent extends BaseEvent {
@@ -19,6 +22,9 @@ export interface AutomationDeletedEvent extends BaseEvent {
19
22
  automationId: string
20
23
  triggerId: string
21
24
  triggerType: string
25
+ audited: {
26
+ name: string
27
+ }
22
28
  }
23
29
 
24
30
  export interface AutomationTestedEvent extends BaseEvent {
@@ -35,6 +41,9 @@ export interface AutomationStepCreatedEvent extends BaseEvent {
35
41
  triggerType: string
36
42
  stepId: string
37
43
  stepType: string
44
+ audited: {
45
+ name: string
46
+ }
38
47
  }
39
48
 
40
49
  export interface AutomationStepDeletedEvent extends BaseEvent {
@@ -44,6 +53,9 @@ export interface AutomationStepDeletedEvent extends BaseEvent {
44
53
  triggerType: string
45
54
  stepId: string
46
55
  stepType: string
56
+ audited: {
57
+ name: string
58
+ }
47
59
  }
48
60
 
49
61
  export interface AutomationsRunEvent extends BaseEvent {
@@ -5,6 +5,7 @@ export interface AppBackupRestoreEvent extends BaseEvent {
5
5
  appId: string
6
6
  restoreId: string
7
7
  backupCreatedAt: string
8
+ name: string
8
9
  }
9
10
 
10
11
  export interface AppBackupTriggeredEvent extends BaseEvent {
@@ -12,4 +13,5 @@ export interface AppBackupTriggeredEvent extends BaseEvent {
12
13
  appId: string
13
14
  trigger: AppBackupTrigger
14
15
  type: AppBackupType
16
+ name: string
15
17
  }
@@ -180,6 +180,190 @@ export enum Event {
180
180
  ENVIRONMENT_VARIABLE_CREATED = "environment_variable:created",
181
181
  ENVIRONMENT_VARIABLE_DELETED = "environment_variable:deleted",
182
182
  ENVIRONMENT_VARIABLE_UPGRADE_PANEL_OPENED = "environment_variable:upgrade_panel_opened",
183
+
184
+ // AUDIT LOG
185
+ AUDIT_LOGS_FILTERED = "audit_log:filtered",
186
+ AUDIT_LOGS_DOWNLOADED = "audit_log:downloaded",
187
+ }
188
+
189
+ // all events that are not audited have been added to this record as undefined, this means
190
+ // that Typescript can protect us against new events being added and auditing of those
191
+ // events not being considered. This might be a little ugly, but provides a level of
192
+ // Typescript build protection for the audit log feature, any new event also needs to be
193
+ // added to this map, during which the developer will need to consider if it should be
194
+ // a user facing event or not.
195
+ export const AuditedEventFriendlyName: Record<Event, string | undefined> = {
196
+ // USER
197
+ [Event.USER_CREATED]: `User "{{ email }}" created`,
198
+ [Event.USER_UPDATED]: `User "{{ email }}" updated`,
199
+ [Event.USER_DELETED]: `User "{{ email }}" deleted`,
200
+ [Event.USER_PERMISSION_ADMIN_ASSIGNED]: `User "{{ email }}" admin role assigned`,
201
+ [Event.USER_PERMISSION_ADMIN_REMOVED]: `User "{{ email }}" admin role removed`,
202
+ [Event.USER_PERMISSION_BUILDER_ASSIGNED]: `User "{{ email }}" builder role assigned`,
203
+ [Event.USER_PERMISSION_BUILDER_REMOVED]: `User "{{ email }}" builder role removed`,
204
+ [Event.USER_INVITED]: `User "{{ email }}" invited`,
205
+ [Event.USER_INVITED_ACCEPTED]: `User "{{ email }}" accepted invite`,
206
+ [Event.USER_PASSWORD_UPDATED]: `User "{{ email }}" password updated`,
207
+ [Event.USER_PASSWORD_RESET_REQUESTED]: `User "{{ email }}" password reset requested`,
208
+ [Event.USER_PASSWORD_RESET]: `User "{{ email }}" password reset`,
209
+ [Event.USER_GROUP_CREATED]: `User group "{{ name }}" created`,
210
+ [Event.USER_GROUP_UPDATED]: `User group "{{ name }}" updated`,
211
+ [Event.USER_GROUP_DELETED]: `User group "{{ name }}" deleted`,
212
+ [Event.USER_GROUP_USERS_ADDED]: `User group "{{ name }}" {{ count }} users added`,
213
+ [Event.USER_GROUP_USERS_REMOVED]: `User group "{{ name }}" {{ count }} users removed`,
214
+ [Event.USER_GROUP_PERMISSIONS_EDITED]: `User group "{{ name }}" permissions edited`,
215
+ [Event.USER_PASSWORD_FORCE_RESET]: undefined,
216
+ [Event.USER_GROUP_ONBOARDING]: undefined,
217
+ [Event.USER_ONBOARDING_COMPLETE]: undefined,
218
+
219
+ // EMAIL
220
+ [Event.EMAIL_SMTP_CREATED]: `Email configuration created`,
221
+ [Event.EMAIL_SMTP_UPDATED]: `Email configuration updated`,
222
+
223
+ // AUTH
224
+ [Event.AUTH_SSO_CREATED]: `SSO configuration created`,
225
+ [Event.AUTH_SSO_UPDATED]: `SSO configuration updated`,
226
+ [Event.AUTH_SSO_ACTIVATED]: `SSO configuration activated`,
227
+ [Event.AUTH_SSO_DEACTIVATED]: `SSO configuration deactivated`,
228
+ [Event.AUTH_LOGIN]: `User "{{ email }}" logged in`,
229
+ [Event.AUTH_LOGOUT]: `User "{{ email }}" logged out`,
230
+
231
+ // ORG
232
+ [Event.ORG_NAME_UPDATED]: `Organisation name updated`,
233
+ [Event.ORG_LOGO_UPDATED]: `Organisation logo updated`,
234
+ [Event.ORG_PLATFORM_URL_UPDATED]: `Organisation platform URL updated`,
235
+
236
+ // APP
237
+ [Event.APP_CREATED]: `App "{{ name }}" created`,
238
+ [Event.APP_UPDATED]: `App "{{ name }}" updated`,
239
+ [Event.APP_DELETED]: `App "{{ name }}" deleted`,
240
+ [Event.APP_PUBLISHED]: `App "{{ name }}" published`,
241
+ [Event.APP_UNPUBLISHED]: `App "{{ name }}" unpublished`,
242
+ [Event.APP_TEMPLATE_IMPORTED]: `App "{{ name }}" template imported`,
243
+ [Event.APP_FILE_IMPORTED]: `App "{{ name }}" file imported`,
244
+ [Event.APP_VERSION_UPDATED]: `App "{{ name }}" version updated`,
245
+ [Event.APP_VERSION_REVERTED]: `App "{{ name }}" version reverted`,
246
+ [Event.APP_REVERTED]: `App "{{ name }}" reverted`,
247
+ [Event.APP_EXPORTED]: `App "{{ name }}" exported`,
248
+ [Event.APP_BACKUP_RESTORED]: `App backup "{{ name }}" restored`,
249
+ [Event.APP_BACKUP_TRIGGERED]: `App backup "{{ name }}" triggered`,
250
+
251
+ // DATASOURCE
252
+ [Event.DATASOURCE_CREATED]: `Datasource created`,
253
+ [Event.DATASOURCE_UPDATED]: `Datasource updated`,
254
+ [Event.DATASOURCE_DELETED]: `Datasource deleted`,
255
+
256
+ // QUERY
257
+ [Event.QUERY_CREATED]: `Query created`,
258
+ [Event.QUERY_UPDATED]: `Query updated`,
259
+ [Event.QUERY_DELETED]: `Query deleted`,
260
+ [Event.QUERY_IMPORT]: `Query import`,
261
+ [Event.QUERIES_RUN]: undefined,
262
+ [Event.QUERY_PREVIEWED]: undefined,
263
+
264
+ // TABLE
265
+ [Event.TABLE_CREATED]: `Table "{{ name }}" created`,
266
+ [Event.TABLE_UPDATED]: `Table "{{ name }}" updated`,
267
+ [Event.TABLE_DELETED]: `Table "{{ name }}" deleted`,
268
+ [Event.TABLE_EXPORTED]: `Table "{{ name }}" exported`,
269
+ [Event.TABLE_IMPORTED]: `Table "{{ name }}" imported`,
270
+ [Event.TABLE_DATA_IMPORTED]: `Data imported to table`,
271
+
272
+ // ROWS
273
+ [Event.ROWS_CREATED]: `Rows created`,
274
+ [Event.ROWS_IMPORTED]: `Rows imported`,
275
+
276
+ // AUTOMATION
277
+ [Event.AUTOMATION_CREATED]: `Automation "{{ name }}" created`,
278
+ [Event.AUTOMATION_DELETED]: `Automation "{{ name }}" deleted`,
279
+ [Event.AUTOMATION_STEP_CREATED]: `Automation "{{ name }}" step added`,
280
+ [Event.AUTOMATION_STEP_DELETED]: `Automation "{{ name }}" step removed`,
281
+ [Event.AUTOMATION_TESTED]: undefined,
282
+ [Event.AUTOMATIONS_RUN]: undefined,
283
+ [Event.AUTOMATION_TRIGGER_UPDATED]: undefined,
284
+
285
+ // SCREEN
286
+ [Event.SCREEN_CREATED]: `Screen "{{ name }}" created`,
287
+ [Event.SCREEN_DELETED]: `Screen "{{ name }}" deleted`,
288
+
289
+ // COMPONENT
290
+ [Event.COMPONENT_CREATED]: `Component created`,
291
+ [Event.COMPONENT_DELETED]: `Component deleted`,
292
+
293
+ // ENVIRONMENT VARIABLE
294
+ [Event.ENVIRONMENT_VARIABLE_CREATED]: `Environment variable created`,
295
+ [Event.ENVIRONMENT_VARIABLE_DELETED]: `Environment variable deleted`,
296
+ [Event.ENVIRONMENT_VARIABLE_UPGRADE_PANEL_OPENED]: undefined,
297
+
298
+ // PLUGIN
299
+ [Event.PLUGIN_IMPORTED]: `Plugin imported`,
300
+ [Event.PLUGIN_DELETED]: `Plugin deleted`,
301
+ [Event.PLUGIN_INIT]: undefined,
302
+
303
+ // ROLE - NOT AUDITED
304
+ [Event.ROLE_CREATED]: undefined,
305
+ [Event.ROLE_UPDATED]: undefined,
306
+ [Event.ROLE_DELETED]: undefined,
307
+ [Event.ROLE_ASSIGNED]: undefined,
308
+ [Event.ROLE_UNASSIGNED]: undefined,
309
+
310
+ // LICENSE - NOT AUDITED
311
+ [Event.LICENSE_PLAN_CHANGED]: undefined,
312
+ [Event.LICENSE_TIER_CHANGED]: undefined,
313
+ [Event.LICENSE_ACTIVATED]: undefined,
314
+ [Event.LICENSE_PAYMENT_FAILED]: undefined,
315
+ [Event.LICENSE_PAYMENT_RECOVERED]: undefined,
316
+ [Event.LICENSE_CHECKOUT_OPENED]: undefined,
317
+ [Event.LICENSE_CHECKOUT_SUCCESS]: undefined,
318
+ [Event.LICENSE_PORTAL_OPENED]: undefined,
319
+
320
+ // ACCOUNT - NOT AUDITED
321
+ [Event.ACCOUNT_CREATED]: undefined,
322
+ [Event.ACCOUNT_DELETED]: undefined,
323
+ [Event.ACCOUNT_VERIFIED]: undefined,
324
+
325
+ // BACKFILL - NOT AUDITED
326
+ [Event.APP_BACKFILL_SUCCEEDED]: undefined,
327
+ [Event.APP_BACKFILL_FAILED]: undefined,
328
+ [Event.TENANT_BACKFILL_SUCCEEDED]: undefined,
329
+ [Event.TENANT_BACKFILL_FAILED]: undefined,
330
+ [Event.INSTALLATION_BACKFILL_SUCCEEDED]: undefined,
331
+ [Event.INSTALLATION_BACKFILL_FAILED]: undefined,
332
+
333
+ // LAYOUT - NOT AUDITED
334
+ [Event.LAYOUT_CREATED]: undefined,
335
+ [Event.LAYOUT_DELETED]: undefined,
336
+
337
+ // VIEW - NOT AUDITED
338
+ [Event.VIEW_CREATED]: undefined,
339
+ [Event.VIEW_UPDATED]: undefined,
340
+ [Event.VIEW_DELETED]: undefined,
341
+ [Event.VIEW_EXPORTED]: undefined,
342
+ [Event.VIEW_FILTER_CREATED]: undefined,
343
+ [Event.VIEW_FILTER_UPDATED]: undefined,
344
+ [Event.VIEW_FILTER_DELETED]: undefined,
345
+ [Event.VIEW_CALCULATION_CREATED]: undefined,
346
+ [Event.VIEW_CALCULATION_UPDATED]: undefined,
347
+ [Event.VIEW_CALCULATION_DELETED]: undefined,
348
+
349
+ // SERVED - NOT AUDITED
350
+ [Event.SERVED_BUILDER]: undefined,
351
+ [Event.SERVED_APP]: undefined,
352
+ [Event.SERVED_APP_PREVIEW]: undefined,
353
+
354
+ // ANALYTICS - NOT AUDITED
355
+ [Event.ANALYTICS_OPT_OUT]: undefined,
356
+ [Event.ANALYTICS_OPT_IN]: undefined,
357
+
358
+ // INSTALLATION - NOT AUDITED
359
+ [Event.INSTALLATION_VERSION_CHECKED]: undefined,
360
+ [Event.INSTALLATION_VERSION_UPGRADED]: undefined,
361
+ [Event.INSTALLATION_VERSION_DOWNGRADED]: undefined,
362
+ [Event.INSTALLATION_FIRST_STARTUP]: undefined,
363
+
364
+ // AUDIT LOG - NOT AUDITED
365
+ [Event.AUDIT_LOGS_FILTERED]: undefined,
366
+ [Event.AUDIT_LOGS_DOWNLOADED]: undefined,
183
367
  }
184
368
 
185
369
  // properties added at the final stage of the event pipeline
@@ -191,6 +375,11 @@ export interface BaseEvent {
191
375
  installationId?: string
192
376
  tenantId?: string
193
377
  hosting?: Hosting
378
+ // any props in the audited section will be removed before passing events
379
+ // up out of system (purely for use with auditing)
380
+ audited?: {
381
+ [key: string]: any
382
+ }
194
383
  }
195
384
 
196
385
  export type TableExportFormat = "json" | "csv"
@@ -34,6 +34,11 @@ export enum IdentityType {
34
34
  INSTALLATION = "installation",
35
35
  }
36
36
 
37
+ export interface HostInfo {
38
+ ipAddress?: string
39
+ userAgent?: string
40
+ }
41
+
37
42
  export interface Identity {
38
43
  id: string
39
44
  type: IdentityType
@@ -41,6 +46,7 @@ export interface Identity {
41
46
  environment: string
42
47
  installationId?: string
43
48
  tenantId?: string
49
+ hostInfo?: HostInfo
44
50
  }
45
51
 
46
52
  export interface UserIdentity extends Identity {
@@ -22,3 +22,4 @@ export * from "./userGroup"
22
22
  export * from "./plugin"
23
23
  export * from "./backup"
24
24
  export * from "./environmentVariable"
25
+ export * from "./auditLog"
@@ -4,10 +4,16 @@ export interface ScreenCreatedEvent extends BaseEvent {
4
4
  screenId: string
5
5
  layoutId?: string
6
6
  roleId: string
7
+ audited: {
8
+ name: string
9
+ }
7
10
  }
8
11
 
9
12
  export interface ScreenDeletedEvent extends BaseEvent {
10
13
  screenId: string
11
14
  layoutId?: string
12
15
  roleId: string
16
+ audited: {
17
+ name: string
18
+ }
13
19
  }
@@ -2,21 +2,36 @@ import { BaseEvent, TableExportFormat } from "./event"
2
2
 
3
3
  export interface TableCreatedEvent extends BaseEvent {
4
4
  tableId: string
5
+ audited: {
6
+ name: string
7
+ }
5
8
  }
6
9
 
7
10
  export interface TableUpdatedEvent extends BaseEvent {
8
11
  tableId: string
12
+ audited: {
13
+ name: string
14
+ }
9
15
  }
10
16
 
11
17
  export interface TableDeletedEvent extends BaseEvent {
12
18
  tableId: string
19
+ audited: {
20
+ name: string
21
+ }
13
22
  }
14
23
 
15
24
  export interface TableExportedEvent extends BaseEvent {
16
25
  tableId: string
17
26
  format: TableExportFormat
27
+ audited: {
28
+ name: string
29
+ }
18
30
  }
19
31
 
20
32
  export interface TableImportedEvent extends BaseEvent {
21
33
  tableId: string
34
+ audited: {
35
+ name: string
36
+ }
22
37
  }
@@ -2,47 +2,84 @@ import { BaseEvent } from "./event"
2
2
 
3
3
  export interface UserCreatedEvent extends BaseEvent {
4
4
  userId: string
5
+ audited: {
6
+ email: string
7
+ }
5
8
  }
6
9
 
7
10
  export interface UserUpdatedEvent extends BaseEvent {
8
11
  userId: string
12
+ audited: {
13
+ email: string
14
+ }
9
15
  }
10
16
 
11
17
  export interface UserDeletedEvent extends BaseEvent {
12
18
  userId: string
19
+ audited: {
20
+ email: string
21
+ }
13
22
  }
14
23
 
15
24
  export interface UserOnboardingEvent extends BaseEvent {
16
25
  userId: string
17
26
  step?: string
27
+ audited: {
28
+ email: string
29
+ }
18
30
  }
19
31
 
20
32
  export interface UserPermissionAssignedEvent extends BaseEvent {
21
33
  userId: string
34
+ audited: {
35
+ email: string
36
+ }
22
37
  }
23
38
 
24
39
  export interface UserPermissionRemovedEvent extends BaseEvent {
25
40
  userId: string
41
+ audited: {
42
+ email: string
43
+ }
26
44
  }
27
45
 
28
- export interface UserInvitedEvent extends BaseEvent {}
46
+ export interface UserInvitedEvent extends BaseEvent {
47
+ audited: {
48
+ email: string
49
+ }
50
+ }
29
51
 
30
52
  export interface UserInviteAcceptedEvent extends BaseEvent {
31
53
  userId: string
54
+ audited: {
55
+ email: string
56
+ }
32
57
  }
33
58
 
34
59
  export interface UserPasswordForceResetEvent extends BaseEvent {
35
60
  userId: string
61
+ audited: {
62
+ email: string
63
+ }
36
64
  }
37
65
 
38
66
  export interface UserPasswordUpdatedEvent extends BaseEvent {
39
67
  userId: string
68
+ audited: {
69
+ email: string
70
+ }
40
71
  }
41
72
 
42
73
  export interface UserPasswordResetRequestedEvent extends BaseEvent {
43
74
  userId: string
75
+ audited: {
76
+ email: string
77
+ }
44
78
  }
45
79
 
46
80
  export interface UserPasswordResetEvent extends BaseEvent {
47
81
  userId: string
82
+ audited: {
83
+ email: string
84
+ }
48
85
  }
@@ -2,27 +2,50 @@ import { BaseEvent } from "./event"
2
2
 
3
3
  export interface GroupCreatedEvent extends BaseEvent {
4
4
  groupId: string
5
+ audited: {
6
+ name: string
7
+ }
5
8
  }
6
9
 
7
10
  export interface GroupUpdatedEvent extends BaseEvent {
8
11
  groupId: string
12
+ audited: {
13
+ name: string
14
+ }
9
15
  }
10
16
 
11
17
  export interface GroupDeletedEvent extends BaseEvent {
12
18
  groupId: string
19
+ audited: {
20
+ name: string
21
+ }
13
22
  }
14
23
 
15
24
  export interface GroupUsersAddedEvent extends BaseEvent {
16
25
  count: number
17
26
  groupId: string
27
+ audited: {
28
+ name: string
29
+ }
18
30
  }
19
31
 
20
32
  export interface GroupUsersDeletedEvent extends BaseEvent {
21
33
  count: number
22
34
  groupId: string
35
+ audited: {
36
+ name: string
37
+ }
23
38
  }
24
39
 
25
40
  export interface GroupAddedOnboardingEvent extends BaseEvent {
26
41
  groupId: string
27
42
  onboarding: boolean
28
43
  }
44
+
45
+ export interface GroupPermissionsEditedEvent extends BaseEvent {
46
+ permissions: Record<string, string>
47
+ groupId: string
48
+ audited: {
49
+ name: string
50
+ }
51
+ }
package/src/sdk/index.ts CHANGED
@@ -12,5 +12,6 @@ export * from "./db"
12
12
  export * from "./middleware"
13
13
  export * from "./featureFlag"
14
14
  export * from "./environmentVariables"
15
+ export * from "./auditLogs"
15
16
  export * from "./sso"
16
17
  export * from "./user"
@@ -2,4 +2,6 @@ export enum Feature {
2
2
  USER_GROUPS = "userGroups",
3
3
  APP_BACKUPS = "appBackups",
4
4
  ENVIRONMENT_VARIABLES = "environmentVariables",
5
+ AUDIT_LOGS = "auditLogs",
6
+ ENFORCEABLE_SSO = "enforceableSSO",
5
7
  }