@workos-inc/node 7.27.2 → 7.27.4

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/README.md CHANGED
@@ -32,7 +32,7 @@ WORKOS_API_KEY="sk_1234"
32
32
  Or, you can set it on your own before your application starts:
33
33
 
34
34
  ```ts
35
- import WorkOS from '@workos-inc/node';
35
+ import { WorkOS } from '@workos-inc/node';
36
36
 
37
37
  const workos = new WorkOS('sk_1234');
38
38
  ```
@@ -4,6 +4,7 @@ import { Connection, ConnectionResponse } from '../../sso/interfaces';
4
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
+ import { OrganizationDomain, OrganizationDomainResponse } from '../../organization-domains/interfaces';
7
8
  export interface EventBase {
8
9
  id: string;
9
10
  createdAt: string;
@@ -368,6 +369,14 @@ export interface RoleDeletedEventResponse extends EventResponseBase {
368
369
  event: 'role.deleted';
369
370
  data: RoleEventResponse;
370
371
  }
372
+ export interface RoleUpdatedEvent extends EventBase {
373
+ event: 'role.updated';
374
+ data: RoleEvent;
375
+ }
376
+ export interface RoleUpdatedEventResponse extends EventResponseBase {
377
+ event: 'role.updated';
378
+ data: RoleEventResponse;
379
+ }
371
380
  export interface SessionCreatedEvent extends EventBase {
372
381
  event: 'session.created';
373
382
  data: Session;
@@ -376,7 +385,23 @@ export interface SessionCreatedEventResponse extends EventResponseBase {
376
385
  event: 'session.created';
377
386
  data: SessionResponse;
378
387
  }
379
- export type Event = AuthenticationEmailVerificationSucceededEvent | AuthenticationMfaSucceededEvent | AuthenticationOAuthFailedEvent | AuthenticationOAuthSucceededEvent | AuthenticationSSOFailedEvent | 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;
380
- export type EventResponse = AuthenticationEmailVerificationSucceededEventResponse | AuthenticationMagicAuthFailedEventResponse | AuthenticationMagicAuthSucceededEventResponse | AuthenticationMfaSucceededEventResponse | AuthenticationOAuthFailedEventResponse | AuthenticationOAuthSucceededEventResponse | AuthenticationPasswordFailedEventResponse | AuthenticationPasswordSucceededEventResponse | AuthenticationSSOFailedEventResponse | 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;
388
+ export interface OrganizationDomainVerifiedEvent extends EventBase {
389
+ event: 'organization_domain.verified';
390
+ data: OrganizationDomain;
391
+ }
392
+ export interface OrganizationDomainVerifiedEventResponse extends EventResponseBase {
393
+ event: 'organization_domain.verified';
394
+ data: OrganizationDomainResponse;
395
+ }
396
+ export interface OrganizationDomainVerificationFailedEvent extends EventBase {
397
+ event: 'organization_domain.verification_failed';
398
+ data: OrganizationDomain;
399
+ }
400
+ export interface OrganizationDomainVerificationFailedEventResponse extends EventResponseBase {
401
+ event: 'organization_domain.verification_failed';
402
+ data: OrganizationDomainResponse;
403
+ }
404
+ export type Event = AuthenticationEmailVerificationSucceededEvent | AuthenticationMfaSucceededEvent | AuthenticationOAuthFailedEvent | AuthenticationOAuthSucceededEvent | AuthenticationSSOFailedEvent | 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 | RoleUpdatedEvent | SessionCreatedEvent | OrganizationCreatedEvent | OrganizationUpdatedEvent | OrganizationDeletedEvent | OrganizationDomainVerifiedEvent | OrganizationDomainVerificationFailedEvent;
405
+ export type EventResponse = AuthenticationEmailVerificationSucceededEventResponse | AuthenticationMagicAuthFailedEventResponse | AuthenticationMagicAuthSucceededEventResponse | AuthenticationMfaSucceededEventResponse | AuthenticationOAuthFailedEventResponse | AuthenticationOAuthSucceededEventResponse | AuthenticationPasswordFailedEventResponse | AuthenticationPasswordSucceededEventResponse | AuthenticationSSOFailedEventResponse | 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 | RoleUpdatedEventResponse | SessionCreatedEventResponse | OrganizationCreatedResponse | OrganizationUpdatedResponse | OrganizationDeletedResponse | OrganizationDomainVerifiedEventResponse | OrganizationDomainVerificationFailedEventResponse;
381
406
  export type EventName = Event['event'];
382
407
  export {};
@@ -3,7 +3,7 @@ export declare abstract class HttpClient implements HttpClientInterface {
3
3
  readonly baseURL: string;
4
4
  readonly options?: RequestInit | undefined;
5
5
  constructor(baseURL: string, options?: RequestInit | undefined);
6
- /** The HTTP client name used for diagnotics */
6
+ /** The HTTP client name used for diagnostics */
7
7
  getClientName(): string;
8
8
  abstract get(path: string, options: RequestOptions): Promise<HttpClientResponseInterface>;
9
9
  abstract post<Entity = any>(path: string, entity: Entity, options: RequestOptions): Promise<HttpClientResponseInterface>;
@@ -6,7 +6,7 @@ class HttpClient {
6
6
  this.baseURL = baseURL;
7
7
  this.options = options;
8
8
  }
9
- /** The HTTP client name used for diagnotics */
9
+ /** The HTTP client name used for diagnostics */
10
10
  getClientName() {
11
11
  throw new Error('getClientName not implemented');
12
12
  }
@@ -5,6 +5,7 @@ const serializers_1 = require("../../directory-sync/serializers");
5
5
  const serializers_2 = require("../../organizations/serializers");
6
6
  const serializers_3 = require("../../sso/serializers");
7
7
  const serializers_4 = require("../../user-management/serializers");
8
+ const organization_domain_serializer_1 = require("../../organization-domains/serializers/organization-domain.serializer");
8
9
  const organization_membership_serializer_1 = require("../../user-management/serializers/organization-membership.serializer");
9
10
  const role_serializer_1 = require("../../user-management/serializers/role.serializer");
10
11
  const session_serializer_1 = require("../../user-management/serializers/session.serializer");
@@ -71,6 +72,7 @@ const deserializeEvent = (event) => {
71
72
  return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, organization_membership_serializer_1.deserializeOrganizationMembership)(event.data) });
72
73
  case 'role.created':
73
74
  case 'role.deleted':
75
+ case 'role.updated':
74
76
  return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, role_serializer_1.deserializeRole)(event.data) });
75
77
  case 'session.created':
76
78
  return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, session_serializer_1.deserializeSession)(event.data) });
@@ -78,6 +80,9 @@ const deserializeEvent = (event) => {
78
80
  case 'organization.updated':
79
81
  case 'organization.deleted':
80
82
  return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, serializers_2.deserializeOrganization)(event.data) });
83
+ case 'organization_domain.verified':
84
+ case 'organization_domain.verification_failed':
85
+ return Object.assign(Object.assign({}, eventBase), { event: event.event, data: (0, organization_domain_serializer_1.deserializeOrganizationDomain)(event.data) });
81
86
  }
82
87
  };
83
88
  exports.deserializeEvent = deserializeEvent;
@@ -22,5 +22,7 @@ declare class WorkOSWorker extends WorkOS {
22
22
  createWebhookClient(): Webhooks;
23
23
  /** @override */
24
24
  createIronSessionProvider(): IronSessionProvider;
25
+ /** @override */
26
+ emitWarning(warning: string): void;
25
27
  }
26
28
  export { WorkOSWorker as WorkOS };
@@ -47,5 +47,10 @@ class WorkOSWorker extends workos_1.WorkOS {
47
47
  createIronSessionProvider() {
48
48
  return new edge_iron_session_provider_1.EdgeIronSessionProvider();
49
49
  }
50
+ /** @override */
51
+ emitWarning(warning) {
52
+ // tslint:disable-next-line:no-console
53
+ return console.warn(`WorkOS: ${warning}`);
54
+ }
50
55
  }
51
56
  exports.WorkOS = WorkOSWorker;
package/lib/workos.js CHANGED
@@ -27,7 +27,7 @@ const bad_request_exception_1 = require("./common/exceptions/bad-request.excepti
27
27
  const http_client_1 = require("./common/net/http-client");
28
28
  const subtle_crypto_provider_1 = require("./common/crypto/subtle-crypto-provider");
29
29
  const fetch_client_1 = require("./common/net/fetch-client");
30
- const VERSION = '7.27.2';
30
+ const VERSION = '7.27.4';
31
31
  const DEFAULT_HOSTNAME = 'api.workos.com';
32
32
  const HEADER_AUTHORIZATION = 'Authorization';
33
33
  const HEADER_IDEMPOTENCY_KEY = 'Idempotency-Key';
@@ -170,11 +170,6 @@ class WorkOS {
170
170
  });
171
171
  }
172
172
  emitWarning(warning) {
173
- // process might be undefined in some environments
174
- if (typeof (process === null || process === void 0 ? void 0 : process.emitWarning) !== 'function') {
175
- // tslint:disable:no-console
176
- return console.warn(`WorkOS: ${warning}`);
177
- }
178
173
  return process.emitWarning(warning, 'WorkOS');
179
174
  }
180
175
  handleHttpError({ path, error }) {
@@ -249,5 +249,19 @@ describe('WorkOS', () => {
249
249
  // tslint:disable-next-line
250
250
  expect(workos.webhooks['cryptoProvider']).toBeInstanceOf(subtle_crypto_provider_1.SubtleCryptoProvider);
251
251
  });
252
+ it('uses console.warn to emit warnings', () => {
253
+ const workos = new index_worker_1.WorkOS('sk_test_key');
254
+ const warnSpy = jest.spyOn(console, 'warn');
255
+ workos.emitWarning('foo');
256
+ expect(warnSpy).toHaveBeenCalledWith('WorkOS: foo');
257
+ });
258
+ });
259
+ describe('when in a node environment', () => {
260
+ it('uses process.emitWarning to emit warnings', () => {
261
+ const workos = new index_1.WorkOS('sk_test_key');
262
+ const warnSpy = jest.spyOn(process, 'emitWarning');
263
+ workos.emitWarning('foo');
264
+ expect(warnSpy).toHaveBeenCalledWith('foo', 'WorkOS');
265
+ });
252
266
  });
253
267
  });
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "7.27.2",
2
+ "version": "7.27.4",
3
3
  "name": "@workos-inc/node",
4
4
  "author": "WorkOS",
5
5
  "description": "A Node wrapper for the WorkOS API",