@workos-inc/node 7.15.0 → 7.17.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 (65) hide show
  1. package/lib/common/interfaces/event.interface.d.ts +67 -3
  2. package/lib/common/interfaces/get-options.interface.d.ts +1 -0
  3. package/lib/common/interfaces/post-options.interface.d.ts +1 -0
  4. package/lib/common/serializers/event.serializer.js +9 -0
  5. package/lib/common/utils/fetch-and-deserialize.d.ts +2 -2
  6. package/lib/common/utils/fetch-and-deserialize.js +2 -4
  7. package/lib/fga/fga-live-test.spec.d.ts +1 -0
  8. package/lib/fga/fga-live-test.spec.js +872 -0
  9. package/lib/fga/fga.d.ts +18 -0
  10. package/lib/fga/fga.js +105 -0
  11. package/lib/fga/fga.spec.d.ts +1 -0
  12. package/lib/fga/fga.spec.js +518 -0
  13. package/lib/fga/interfaces/check-op.enum.d.ts +5 -0
  14. package/lib/fga/interfaces/check-op.enum.js +9 -0
  15. package/lib/fga/interfaces/check.interface.d.ts +71 -0
  16. package/lib/fga/interfaces/check.interface.js +21 -0
  17. package/lib/fga/interfaces/index.d.ts +7 -0
  18. package/lib/fga/interfaces/index.js +23 -0
  19. package/lib/fga/interfaces/query.interface.d.ts +30 -0
  20. package/lib/fga/interfaces/query.interface.js +2 -0
  21. package/lib/fga/interfaces/resource.interface.d.ts +60 -0
  22. package/lib/fga/interfaces/resource.interface.js +2 -0
  23. package/lib/fga/interfaces/warrant-op.enum.d.ts +4 -0
  24. package/lib/fga/interfaces/warrant-op.enum.js +8 -0
  25. package/lib/fga/interfaces/warrant-token.interface.d.ts +6 -0
  26. package/lib/fga/interfaces/warrant-token.interface.js +2 -0
  27. package/lib/fga/interfaces/warrant.interface.d.ts +65 -0
  28. package/lib/fga/interfaces/warrant.interface.js +2 -0
  29. package/lib/fga/serializers/check-options.serializer.d.ts +4 -0
  30. package/lib/fga/serializers/check-options.serializer.js +62 -0
  31. package/lib/fga/serializers/create-resource-options.serializer.d.ts +2 -0
  32. package/lib/fga/serializers/create-resource-options.serializer.js +16 -0
  33. package/lib/fga/serializers/delete-resource-options.serializer.d.ts +2 -0
  34. package/lib/fga/serializers/delete-resource-options.serializer.js +15 -0
  35. package/lib/fga/serializers/index.d.ts +11 -0
  36. package/lib/fga/serializers/index.js +27 -0
  37. package/lib/fga/serializers/list-resources-options.serializer.d.ts +2 -0
  38. package/lib/fga/serializers/list-resources-options.serializer.js +12 -0
  39. package/lib/fga/serializers/list-warrants-options.serializer.d.ts +2 -0
  40. package/lib/fga/serializers/list-warrants-options.serializer.js +14 -0
  41. package/lib/fga/serializers/query-options.serializer.d.ts +2 -0
  42. package/lib/fga/serializers/query-options.serializer.js +12 -0
  43. package/lib/fga/serializers/query-result.serializer.d.ts +2 -0
  44. package/lib/fga/serializers/query-result.serializer.js +21 -0
  45. package/lib/fga/serializers/resource.serializer.d.ts +2 -0
  46. package/lib/fga/serializers/resource.serializer.js +9 -0
  47. package/lib/fga/serializers/warrant-token.serializer.d.ts +2 -0
  48. package/lib/fga/serializers/warrant-token.serializer.js +7 -0
  49. package/lib/fga/serializers/warrant.serializer.d.ts +2 -0
  50. package/lib/fga/serializers/warrant.serializer.js +14 -0
  51. package/lib/fga/serializers/write-warrant-options.serializer.d.ts +2 -0
  52. package/lib/fga/serializers/write-warrant-options.serializer.js +27 -0
  53. package/lib/fga/utils/interface-check.d.ts +3 -0
  54. package/lib/fga/utils/interface-check.js +15 -0
  55. package/lib/user-management/interfaces/authentication-event.interface.d.ts +25 -0
  56. package/lib/user-management/interfaces/authentication-event.interface.js +2 -0
  57. package/lib/user-management/interfaces/index.d.ts +1 -0
  58. package/lib/user-management/interfaces/index.js +1 -0
  59. package/lib/user-management/serializers/authentication-event.serializer.d.ts +2 -0
  60. package/lib/user-management/serializers/authentication-event.serializer.js +13 -0
  61. package/lib/user-management/serializers/index.d.ts +1 -0
  62. package/lib/user-management/serializers/index.js +1 -0
  63. package/lib/workos.d.ts +2 -0
  64. package/lib/workos.js +19 -7
  65. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import { DirectoryUser, DirectoryUserResponse, DirectoryGroup, DirectoryGroupResponse, EventDirectory, EventDirectoryResponse } from '../../directory-sync/interfaces';
2
2
  import { Organization, OrganizationResponse } from '../../organizations/interfaces';
3
3
  import { Connection, ConnectionResponse } from '../../sso/interfaces';
4
- import { EmailVerificationEvent, EmailVerificationEventResponse, InvitationEvent, InvitationEventResponse, MagicAuthEvent, MagicAuthEventResponse, PasswordResetEvent, PasswordResetEventResponse, Session, SessionResponse, User, UserResponse } from '../../user-management/interfaces';
4
+ import { AuthenticationEvent, AuthenticationEventResponse, EmailVerificationEvent, EmailVerificationEventResponse, InvitationEvent, InvitationEventResponse, MagicAuthEvent, MagicAuthEventResponse, PasswordResetEvent, PasswordResetEventResponse, Session, SessionResponse, User, UserResponse } from '../../user-management/interfaces';
5
5
  import { OrganizationMembership, OrganizationMembershipResponse } from '../../user-management/interfaces/organization-membership.interface';
6
6
  import { RoleEvent, RoleEventResponse } from '../../roles/interfaces/role.interface';
7
7
  export interface EventBase {
@@ -12,6 +12,70 @@ interface EventResponseBase {
12
12
  id: string;
13
13
  created_at: string;
14
14
  }
15
+ export interface AuthenticationEmailVerificationSucceededEvent extends EventBase {
16
+ event: 'authentication.email_verification_succeeded';
17
+ data: AuthenticationEvent;
18
+ }
19
+ export interface AuthenticationEmailVerificationSucceededEventResponse extends EventResponseBase {
20
+ event: 'authentication.email_verification_succeeded';
21
+ data: AuthenticationEventResponse;
22
+ }
23
+ export interface AuthenticationMagicAuthFailedEvent extends EventBase {
24
+ event: 'authentication.magic_auth_failed';
25
+ data: AuthenticationEvent;
26
+ }
27
+ export interface AuthenticationMagicAuthFailedEventResponse extends EventResponseBase {
28
+ event: 'authentication.magic_auth_failed';
29
+ data: AuthenticationEventResponse;
30
+ }
31
+ export interface AuthenticationMagicAuthSucceededEvent extends EventBase {
32
+ event: 'authentication.magic_auth_succeeded';
33
+ data: AuthenticationEvent;
34
+ }
35
+ export interface AuthenticationMagicAuthSucceededEventResponse extends EventResponseBase {
36
+ event: 'authentication.magic_auth_succeeded';
37
+ data: AuthenticationEventResponse;
38
+ }
39
+ export interface AuthenticationMfaSucceededEvent extends EventBase {
40
+ event: 'authentication.mfa_succeeded';
41
+ data: AuthenticationEvent;
42
+ }
43
+ export interface AuthenticationMfaSucceededEventResponse extends EventResponseBase {
44
+ event: 'authentication.mfa_succeeded';
45
+ data: AuthenticationEventResponse;
46
+ }
47
+ export interface AuthenticationOAuthSucceededEvent extends EventBase {
48
+ event: 'authentication.oauth_succeeded';
49
+ data: AuthenticationEvent;
50
+ }
51
+ export interface AuthenticationOAuthSucceededEventResponse extends EventResponseBase {
52
+ event: 'authentication.oauth_succeeded';
53
+ data: AuthenticationEventResponse;
54
+ }
55
+ export interface AuthenticationPasswordFailedEvent extends EventBase {
56
+ event: 'authentication.password_failed';
57
+ data: AuthenticationEvent;
58
+ }
59
+ export interface AuthenticationPasswordFailedEventResponse extends EventResponseBase {
60
+ event: 'authentication.password_failed';
61
+ data: AuthenticationEventResponse;
62
+ }
63
+ export interface AuthenticationPasswordSucceededEvent extends EventBase {
64
+ event: 'authentication.password_succeeded';
65
+ data: AuthenticationEvent;
66
+ }
67
+ export interface AuthenticationPasswordSucceededEventResponse extends EventResponseBase {
68
+ event: 'authentication.password_succeeded';
69
+ data: AuthenticationEventResponse;
70
+ }
71
+ export interface AuthenticationSSOSucceededEvent extends EventBase {
72
+ event: 'authentication.sso_succeeded';
73
+ data: AuthenticationEvent;
74
+ }
75
+ export interface AuthenticationSSOSucceededEventResponse extends EventResponseBase {
76
+ event: 'authentication.sso_succeeded';
77
+ data: AuthenticationEventResponse;
78
+ }
15
79
  export interface ConnectionActivatedEvent extends EventBase {
16
80
  event: 'connection.activated';
17
81
  data: Connection;
@@ -296,7 +360,7 @@ export interface SessionCreatedEventResponse extends EventResponseBase {
296
360
  event: 'session.created';
297
361
  data: SessionResponse;
298
362
  }
299
- export type Event = ConnectionActivatedEvent | ConnectionDeactivatedEvent | ConnectionDeletedEvent | DsyncActivatedEvent | DsyncDeactivatedEvent | DsyncDeletedEvent | DsyncGroupCreatedEvent | DsyncGroupUpdatedEvent | DsyncGroupDeletedEvent | DsyncGroupUserAddedEvent | DsyncGroupUserRemovedEvent | DsyncUserCreatedEvent | DsyncUserUpdatedEvent | DsyncUserDeletedEvent | EmailVerificationCreatedEvent | InvitationCreatedEvent | MagicAuthCreatedEvent | PasswordResetCreatedEvent | UserCreatedEvent | UserUpdatedEvent | UserDeletedEvent | OrganizationMembershipAdded | OrganizationMembershipCreated | OrganizationMembershipDeleted | OrganizationMembershipUpdated | OrganizationMembershipRemoved | RoleCreatedEvent | RoleDeletedEvent | SessionCreatedEvent | OrganizationCreatedEvent | OrganizationUpdatedEvent | OrganizationDeletedEvent;
300
- export type EventResponse = ConnectionActivatedEventResponse | ConnectionDeactivatedEventResponse | ConnectionDeletedEventResponse | DsyncActivatedEventResponse | DsyncDeactivatedEventResponse | DsyncDeletedEventResponse | DsyncGroupCreatedEventResponse | DsyncGroupUpdatedEventResponse | DsyncGroupDeletedEventResponse | DsyncGroupUserAddedEventResponse | DsyncGroupUserRemovedEventResponse | DsyncUserCreatedEventResponse | DsyncUserUpdatedEventResponse | DsyncUserDeletedEventResponse | EmailVerificationCreatedEventResponse | InvitationCreatedEventResponse | MagicAuthCreatedEventResponse | PasswordResetCreatedEventResponse | UserCreatedEventResponse | UserUpdatedEventResponse | UserDeletedEventResponse | OrganizationMembershipAddedResponse | OrganizationMembershipCreatedResponse | OrganizationMembershipDeletedResponse | OrganizationMembershipUpdatedResponse | OrganizationMembershipRemovedResponse | RoleCreatedEventResponse | RoleDeletedEventResponse | SessionCreatedEventResponse | OrganizationCreatedResponse | OrganizationUpdatedResponse | OrganizationDeletedResponse;
363
+ export type Event = AuthenticationEmailVerificationSucceededEvent | AuthenticationMfaSucceededEvent | AuthenticationOAuthSucceededEvent | AuthenticationSSOSucceededEvent | AuthenticationPasswordFailedEvent | AuthenticationPasswordSucceededEvent | AuthenticationMagicAuthFailedEvent | AuthenticationMagicAuthSucceededEvent | ConnectionActivatedEvent | ConnectionDeactivatedEvent | ConnectionDeletedEvent | DsyncActivatedEvent | DsyncDeactivatedEvent | DsyncDeletedEvent | DsyncGroupCreatedEvent | DsyncGroupUpdatedEvent | DsyncGroupDeletedEvent | DsyncGroupUserAddedEvent | DsyncGroupUserRemovedEvent | DsyncUserCreatedEvent | DsyncUserUpdatedEvent | DsyncUserDeletedEvent | EmailVerificationCreatedEvent | InvitationCreatedEvent | MagicAuthCreatedEvent | PasswordResetCreatedEvent | UserCreatedEvent | UserUpdatedEvent | UserDeletedEvent | OrganizationMembershipAdded | OrganizationMembershipCreated | OrganizationMembershipDeleted | OrganizationMembershipUpdated | OrganizationMembershipRemoved | RoleCreatedEvent | RoleDeletedEvent | SessionCreatedEvent | OrganizationCreatedEvent | OrganizationUpdatedEvent | OrganizationDeletedEvent;
364
+ export type EventResponse = AuthenticationEmailVerificationSucceededEventResponse | AuthenticationMagicAuthFailedEventResponse | AuthenticationMagicAuthSucceededEventResponse | AuthenticationMfaSucceededEventResponse | AuthenticationOAuthSucceededEventResponse | AuthenticationPasswordFailedEventResponse | AuthenticationPasswordSucceededEventResponse | AuthenticationSSOSucceededEventResponse | ConnectionActivatedEventResponse | ConnectionDeactivatedEventResponse | ConnectionDeletedEventResponse | DsyncActivatedEventResponse | DsyncDeactivatedEventResponse | DsyncDeletedEventResponse | DsyncGroupCreatedEventResponse | DsyncGroupUpdatedEventResponse | DsyncGroupDeletedEventResponse | DsyncGroupUserAddedEventResponse | DsyncGroupUserRemovedEventResponse | DsyncUserCreatedEventResponse | DsyncUserUpdatedEventResponse | DsyncUserDeletedEventResponse | EmailVerificationCreatedEventResponse | InvitationCreatedEventResponse | MagicAuthCreatedEventResponse | PasswordResetCreatedEventResponse | UserCreatedEventResponse | UserUpdatedEventResponse | UserDeletedEventResponse | OrganizationMembershipAddedResponse | OrganizationMembershipCreatedResponse | OrganizationMembershipDeletedResponse | OrganizationMembershipUpdatedResponse | OrganizationMembershipRemovedResponse | RoleCreatedEventResponse | RoleDeletedEventResponse | SessionCreatedEventResponse | OrganizationCreatedResponse | OrganizationUpdatedResponse | OrganizationDeletedResponse;
301
365
  export type EventName = Event['event'];
302
366
  export {};
@@ -1,4 +1,5 @@
1
1
  export interface GetOptions {
2
2
  query?: Record<string, any>;
3
3
  accessToken?: string;
4
+ warrantToken?: string;
4
5
  }
@@ -3,4 +3,5 @@ export interface PostOptions {
3
3
  [key: string]: any;
4
4
  };
5
5
  idempotencyKey?: string;
6
+ warrantToken?: string;
6
7
  }
@@ -14,6 +14,15 @@ const deserializeEvent = (event) => {
14
14
  createdAt: event.created_at,
15
15
  };
16
16
  switch (event.event) {
17
+ case 'authentication.email_verification_succeeded':
18
+ case 'authentication.magic_auth_failed':
19
+ case 'authentication.magic_auth_succeeded':
20
+ case 'authentication.mfa_succeeded':
21
+ case 'authentication.oauth_succeeded':
22
+ case 'authentication.password_failed':
23
+ case 'authentication.password_succeeded':
24
+ case 'authentication.sso_succeeded':
25
+ return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, serializers_4.deserializeAuthenticationEvent)(event.data) });
17
26
  case 'connection.activated':
18
27
  case 'connection.deactivated':
19
28
  case 'connection.deleted':
@@ -1,3 +1,3 @@
1
1
  import { WorkOS } from '../../workos';
2
- import { List, PaginationOptions } from '../interfaces';
3
- export declare const fetchAndDeserialize: <T, U>(workos: WorkOS, endpoint: string, deserializeFn: (data: T) => U, options?: PaginationOptions) => Promise<List<U>>;
2
+ import { GetOptions, List, PaginationOptions } from '../interfaces';
3
+ export declare const fetchAndDeserialize: <T, U>(workos: WorkOS, endpoint: string, deserializeFn: (data: T) => U, options?: PaginationOptions, requestOptions?: GetOptions) => Promise<List<U>>;
@@ -14,10 +14,8 @@ const serializers_1 = require("../serializers");
14
14
  const setDefaultOptions = (options) => {
15
15
  return Object.assign(Object.assign({}, options), { order: (options === null || options === void 0 ? void 0 : options.order) || 'desc' });
16
16
  };
17
- const fetchAndDeserialize = (workos, endpoint, deserializeFn, options) => __awaiter(void 0, void 0, void 0, function* () {
18
- const { data } = yield workos.get(endpoint, {
19
- query: setDefaultOptions(options),
20
- });
17
+ const fetchAndDeserialize = (workos, endpoint, deserializeFn, options, requestOptions) => __awaiter(void 0, void 0, void 0, function* () {
18
+ const { data } = yield workos.get(endpoint, Object.assign({ query: setDefaultOptions(options) }, requestOptions));
21
19
  return (0, serializers_1.deserializeList)(data, deserializeFn);
22
20
  });
23
21
  exports.fetchAndDeserialize = fetchAndDeserialize;
@@ -0,0 +1 @@
1
+ export {};