From bbe4aab4f419d20208ce7b89544d68c1204f1dd5 Mon Sep 17 00:00:00 2001 From: amiram Date: Tue, 23 May 2017 10:40:47 +0300 Subject: [PATCH 1/6] auth0 fix getUser returns only a single user fix deleteUser returns void fix getUser and deleteUser mandatory params --- types/auth0/auth0-tests.ts | 36 ++++++++++++++++++++++++++++++++++++ types/auth0/index.d.ts | 8 ++++---- 2 files changed, 40 insertions(+), 4 deletions(-) diff --git a/types/auth0/auth0-tests.ts b/types/auth0/auth0-tests.ts index 24a4aad87d..b84e92e223 100644 --- a/types/auth0/auth0-tests.ts +++ b/types/auth0/auth0-tests.ts @@ -28,6 +28,42 @@ management // Handle the error. }); +// Using a callback. +management.getUser({id: 'user_id'},(err: Error, user: auth0.User) => { + if (err) { + // Handle error. + } + console.log(user); +}); + +// Using a Promise. +management + .getUser({id: 'user_id'}) + .then((user) => { + console.log(user); + }) + .catch((err) => { + // Handle the error. + }); + +// Using a callback. +management.deleteUser({id: 'user_id'},(err: Error) => { + if (err) { + // Handle error. + } + console.log('deleted'); +}); + +// Using a Promise. +management + .deleteUser({id: 'user_id'}) + .then(() => { + console.log('deleted'); + }) + .catch((err) => { + // Handle the error. + }); + management .createUser({ connection: 'My-Connection', diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index a8a6242bb4..096ba489a5 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -307,8 +307,8 @@ export class ManagementClient { getUsers(params?: GetUsersData): Promise; getUsers(params?: GetUsersData, cb?: (err: Error, users: User[]) => void): void; - getUser(params?: ObjectWithId): Promise; - getUser(params?: ObjectWithId, cb?: (err: Error, users: User[]) => void): void; + getUser(params: ObjectWithId): Promise; + getUser(params: ObjectWithId, cb?: (err: Error, user: User) => void): void; createUser(data: UserData): Promise; createUser(data: UserData, cb: (err: Error, data: User) => void): void; @@ -322,8 +322,8 @@ export class ManagementClient { deleteAllUsers(): Promise; deleteAllUsers(cb: (err: Error, data: any) => void): void; - deleteUser(params?: ObjectWithId): Promise; - deleteUser(params?: ObjectWithId, cb?: (err: Error, users: User[]) => void): void; + deleteUser(params: ObjectWithId): Promise; + deleteUser(params: ObjectWithId, cb?: (err: Error) => void): void; updateAppMetadata(params: UpdateUserParameters, data: AppMetadata): Promise; updateAppMetadata(params: UpdateUserParameters, data: AppMetadata, cb: (err: Error, data: User) => void): void; From e4a921428005061a0796734543058a720f1b318f Mon Sep 17 00:00:00 2001 From: amiram Date: Tue, 23 May 2017 10:44:03 +0300 Subject: [PATCH 2/6] auth0 fix getUser returns only a single user fix deleteUser returns void fix getUser and deleteUser mandatory params --- types/auth0/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index 096ba489a5..c920f3709a 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -1,6 +1,6 @@ // Type definitions for auth0 2.4 // Project: https://github.com/auth0/node-auth0 -// Definitions by: Wilson Hobbs , Seth Westphal +// Definitions by: Wilson Hobbs , Seth Westphal , Amiram Korach // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped import * as Promise from 'bluebird'; From 163ae5a140eae83b28705339781f41b675d780eb Mon Sep 17 00:00:00 2001 From: amiram Date: Tue, 23 May 2017 10:47:44 +0300 Subject: [PATCH 3/6] auth0 fix getUser returns only a single user fix deleteUser returns void fix getUser and deleteUser mandatory params --- types/auth0/index.d.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index c920f3709a..be4de08f1f 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -1,4 +1,4 @@ -// Type definitions for auth0 2.4 +// Type definitions for auth0 3.0 // Project: https://github.com/auth0/node-auth0 // Definitions by: Wilson Hobbs , Seth Westphal , Amiram Korach // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped From 4f0face89dfec6305fef20f3859819e45c55f35b Mon Sep 17 00:00:00 2001 From: amiram Date: Wed, 24 May 2017 08:00:30 +0300 Subject: [PATCH 4/6] CreateUserData: add more properties. UpdateUserData: added. DeleteMultifactorParams: added type for provider. UnlinkAccountsParams: added type for provider. UnlinkAccountsResponse: added. deleteUserMultifactor: removed returned value. --- types/auth0/index.d.ts | 85 +++++++++++++++++++++++++++++++++--------- 1 file changed, 67 insertions(+), 18 deletions(-) diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index be4de08f1f..a27493244a 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -13,7 +13,7 @@ export interface ManagementClientOptions { export interface UserMetadata { } export interface AppMetadata { } -export interface UserData { +export interface CreateUserData { connection: string; email?: string; username?: string; @@ -21,9 +21,28 @@ export interface UserData { phone_number?: string; user_metadata?: UserMetadata; email_verified?: boolean; + verify_email?: boolean; + phone_verified?: boolean, app_metadata?: AppMetadata; } +export interface UpdateUserData { + blocked?: boolean; + email_verified?: boolean; + email?: string; + verify_email?: boolean, + phone_number?: string, + phone_verified?: boolean, + verify_phone_number?: boolean, + password?: string, + verify_password?: boolean, + user_metadata?: UserMetadata, + app_metadata?: AppMetadata, + connection?: string, + username?: string, + client_id?: string +} + export interface GetUsersData { per_page?: number; page?: number; @@ -67,8 +86,7 @@ export interface Identity { isSocial: boolean; } -export interface UpdateUserParameters { - id: string; +export interface UpdateUserParameters extends ObjectWithId { } export interface AuthenticationClientOptions { @@ -134,17 +152,47 @@ export interface ClientParams { client_id: string; } +export type DeleteDeleteMultifactorParamsProvider = 'duo' | 'google-authenticator'; + export interface DeleteMultifactorParams { id: string; - provider: string; + provider: DeleteDeleteMultifactorParamsProvider; } -export interface LinkAccountsParams { +export type UnlinkAccountsParamsProvider = 'ad' | 'adfs' | 'amazon' | 'dropbox' | 'bitbucket' | 'aol' | 'auth0-adldap' | + 'auth0-oidc' | 'auth0' | 'baidu' | 'bitly' | 'box' | 'custom' | 'dwolla' | 'email' | 'evernote-sandbox' | 'evernote' | + 'exact' | 'facebook' | 'fitbit' | 'flickr' | 'github' | 'google-apps' | 'google-oauth2' | 'guardian' | 'instagram' | + 'ip' | 'linkedin' | 'miicard' | 'oauth1' | 'oauth2' | 'office365' | 'paypal' | 'paypal-sandbox' | 'pingfederate' | + 'planningcenter' | 'renren' | 'salesforce-community' | 'salesforce-sandbox' | 'salesforce' | 'samlp' | 'sharepoint' | + 'shopify' | 'sms' | 'soundcloud' | 'thecity-sandbox' | 'thecity' | 'thirtysevensignals' | 'twitter' | 'untappd' | + 'vkontakte' | 'waad' | 'weibo' | 'windowslive' | 'wordpress' | 'yahoo' | 'yammer' | 'yandex'; + +export interface UnlinkAccountsParams { id: string; - provider: string; + provider: UnlinkAccountsParamsProvider; user_id: string; } +export interface UnlinkAccountsResponseProfile { + email?: string; + email_verified?: boolean; + name?: string; + username?: string; + given_name?: string; + phone_number?: string; + phone_verified?: boolean; + family_name?: string; +} + +export interface UnlinkAccountsResponse { + connection: string; + user_id: string; + provider: string; + isSocial?: boolean; + access_token?: string; + profileData?: UnlinkAccountsResponseProfile +} + export interface LinkAccountsData { user_id: string; connection_id: string; @@ -310,29 +358,30 @@ export class ManagementClient { getUser(params: ObjectWithId): Promise; getUser(params: ObjectWithId, cb?: (err: Error, user: User) => void): void; - createUser(data: UserData): Promise; - createUser(data: UserData, cb: (err: Error, data: User) => void): void; + createUser(data: CreateUserData): Promise; + createUser(data: CreateUserData, cb: (err: Error, data: User) => void): void; - updateUser(params: UpdateUserParameters, data: User): Promise; - updateUser(params: UpdateUserParameters, data: User, cb: (err: Error, data: User) => void): void; + updateUser(params: ObjectWithId, data: UpdateUserData): Promise; + updateUser(params: ObjectWithId, data: UpdateUserData, cb: (err: Error, data: User) => void): void; - updateUserMetadata(params: UpdateUserParameters, data: UserMetadata): Promise; - updateUserMetadata(params: UpdateUserParameters, data: UserMetadata, cb: (err: Error, data: User) => void): void; + updateUserMetadata(params: ObjectWithId, data: UserMetadata): Promise; + updateUserMetadata(params: ObjectWithId, data: UserMetadata, cb: (err: Error, data: User) => void): void; + // Should be removed from auth0 also. Doesn't exist in api. deleteAllUsers(): Promise; deleteAllUsers(cb: (err: Error, data: any) => void): void; deleteUser(params: ObjectWithId): Promise; deleteUser(params: ObjectWithId, cb?: (err: Error) => void): void; - updateAppMetadata(params: UpdateUserParameters, data: AppMetadata): Promise; - updateAppMetadata(params: UpdateUserParameters, data: AppMetadata, cb: (err: Error, data: User) => void): void; + updateAppMetadata(params: ObjectWithId, data: AppMetadata): Promise; + updateAppMetadata(params: ObjectWithId, data: AppMetadata, cb: (err: Error, data: User) => void): void; - deleteUserMultifactor(params: DeleteMultifactorParams): Promise; - deleteUserMultifactor(params: DeleteMultifactorParams, cb: (err: Error, data: any) => void): void; + deleteUserMultifactor(params: DeleteMultifactorParams): Promise; + deleteUserMultifactor(params: DeleteMultifactorParams, cb: (err: Error) => void): void; - unlinkUsers(params: LinkAccountsParams): Promise; - unlinkUsers(params: LinkAccountsParams, cb: (err: Error, data: any) => void): void; + unlinkUsers(params: UnlinkAccountsParams): Promise; + unlinkUsers(params: UnlinkAccountsParams, cb: (err: Error, data: UnlinkAccountsResponse) => void): void; linkUsers(params: ObjectWithId, data: LinkAccountsData): Promise; linkUsers(params: ObjectWithId, data: LinkAccountsData, cb: (err: Error, data: any) => void): void; From 52c5e0734682fc73882a3d751581c7a6d3385f5a Mon Sep 17 00:00:00 2001 From: amiram Date: Sun, 28 May 2017 21:30:21 +0300 Subject: [PATCH 5/6] Make UpdateUserData extend UserData --- types/auth0/index.d.ts | 24 +++++++----------------- 1 file changed, 7 insertions(+), 17 deletions(-) diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index a27493244a..5fab6ff513 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -13,33 +13,23 @@ export interface ManagementClientOptions { export interface UserMetadata { } export interface AppMetadata { } -export interface CreateUserData { +export interface UserData { connection: string; email?: string; username?: string; - password?: string; - phone_number?: string; - user_metadata?: UserMetadata; email_verified?: boolean; verify_email?: boolean; + password?: string; + phone_number?: string; phone_verified?: boolean, + user_metadata?: UserMetadata; app_metadata?: AppMetadata; } -export interface UpdateUserData { +export interface UpdateUserData extends UserData { blocked?: boolean; - email_verified?: boolean; - email?: string; - verify_email?: boolean, - phone_number?: string, - phone_verified?: boolean, verify_phone_number?: boolean, - password?: string, verify_password?: boolean, - user_metadata?: UserMetadata, - app_metadata?: AppMetadata, - connection?: string, - username?: string, client_id?: string } @@ -358,8 +348,8 @@ export class ManagementClient { getUser(params: ObjectWithId): Promise; getUser(params: ObjectWithId, cb?: (err: Error, user: User) => void): void; - createUser(data: CreateUserData): Promise; - createUser(data: CreateUserData, cb: (err: Error, data: User) => void): void; + createUser(data: UserData): Promise; + createUser(data: UserData, cb: (err: Error, data: User) => void): void; updateUser(params: ObjectWithId, data: UpdateUserData): Promise; updateUser(params: ObjectWithId, data: UpdateUserData, cb: (err: Error, data: User) => void): void; From babb37825c209e7c9630414ca0968847611db7df Mon Sep 17 00:00:00 2001 From: amiram Date: Mon, 29 May 2017 07:32:13 +0300 Subject: [PATCH 6/6] Make CreateUserData extend UserData --- types/auth0/index.d.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/types/auth0/index.d.ts b/types/auth0/index.d.ts index 5fab6ff513..79e02498c2 100644 --- a/types/auth0/index.d.ts +++ b/types/auth0/index.d.ts @@ -14,7 +14,6 @@ export interface UserMetadata { } export interface AppMetadata { } export interface UserData { - connection: string; email?: string; username?: string; email_verified?: boolean; @@ -26,7 +25,12 @@ export interface UserData { app_metadata?: AppMetadata; } +export interface CreateUserData extends UserData { + connection: string; +} + export interface UpdateUserData extends UserData { + connection?: string; blocked?: boolean; verify_phone_number?: boolean, verify_password?: boolean, @@ -348,8 +352,8 @@ export class ManagementClient { getUser(params: ObjectWithId): Promise; getUser(params: ObjectWithId, cb?: (err: Error, user: User) => void): void; - createUser(data: UserData): Promise; - createUser(data: UserData, cb: (err: Error, data: User) => void): void; + createUser(data: CreateUserData): Promise; + createUser(data: CreateUserData, cb: (err: Error, data: User) => void): void; updateUser(params: ObjectWithId, data: UpdateUserData): Promise; updateUser(params: ObjectWithId, data: UpdateUserData, cb: (err: Error, data: User) => void): void;