@pax2pay/client 0.3.7 → 0.3.8

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.
@@ -1,6 +1,7 @@
1
1
  import * as model from "../../model"
2
2
  import { Collection } from "../Collection"
3
3
  import { Connection } from "../Connection"
4
+ import { Paginated } from "../Paginated"
4
5
  import { Resource } from "../Resource"
5
6
  import { User } from "../User"
6
7
 
@@ -76,4 +77,62 @@ export class Users extends Collection<model.UserResponse, model.UserSearchReques
76
77
  async removeTwoFactorAuthentication(username: string, otp: string): Promise<void | model.ErrorResponse> {
77
78
  return await this.connection.remove(`users/${username}/two-factor`, undefined, undefined, { "x-otp": otp })
78
79
  }
80
+ async searchUsers(
81
+ request: model.UserSearchRequest,
82
+ parameters?: Record<string, any>
83
+ ): Promise<model.UserResponse[] | model.ErrorResponse> {
84
+ const result = await this.connection.post<{ list: model.UserResponse[]; totalCount: number }>(
85
+ `users/searches`,
86
+ request,
87
+ parameters
88
+ )
89
+ return this.extractResponse(result)
90
+ }
91
+ async searchUsersPaginated(
92
+ request: model.UserSearchRequest,
93
+ previous?: Paginated<model.UserResponse>,
94
+ page?: number,
95
+ size?: number,
96
+ sort = "createdOn,desc"
97
+ ): Promise<model.ErrorResponse | Paginated<model.UserResponse>> {
98
+ return await this.getNextPaginated<model.UserResponse>(
99
+ previous,
100
+ (page, size, sort, request) =>
101
+ this.connection.post<{ list: model.UserResponse[]; totalCount: number } | model.UserResponse[]>(
102
+ `users/searches`,
103
+ request,
104
+ {
105
+ page: page,
106
+ size: size,
107
+ sort: sort,
108
+ }
109
+ ),
110
+ request,
111
+ page,
112
+ size,
113
+ sort
114
+ )
115
+ }
116
+ async getAllUsersPaginated(
117
+ previous?: Paginated<model.UserResponse>,
118
+ page?: number,
119
+ size?: number,
120
+ sort = "createdOn,desc",
121
+ providerCode = "modulr"
122
+ ): Promise<model.ErrorResponse | Paginated<model.UserResponse>> {
123
+ return await this.getNextPaginated<model.UserResponse>(
124
+ previous,
125
+ (page, size, sort) =>
126
+ this.connection.get<{ list: model.UserResponse[]; totalCount: number } | model.UserResponse[]>(`users`, {
127
+ page: page,
128
+ size: size,
129
+ sort: sort,
130
+ provider: providerCode,
131
+ }),
132
+ undefined,
133
+ page,
134
+ size,
135
+ sort
136
+ )
137
+ }
79
138
  }
@@ -1,6 +1,7 @@
1
1
  import * as model from "../../model";
2
2
  import { Collection } from "../Collection";
3
3
  import { Connection } from "../Connection";
4
+ import { Paginated } from "../Paginated";
4
5
  import { Resource } from "../Resource";
5
6
  export declare class Users extends Collection<model.UserResponse, model.UserSearchRequest, model.UserRequest> {
6
7
  protected folder: string;
@@ -22,4 +23,7 @@ export declare class Users extends Collection<model.UserResponse, model.UserSear
22
23
  changePassword(request: model.PasswordChangeRequest): Promise<model.UserResponse | model.ErrorResponse>;
23
24
  setUpTwoFactorAuthentication(username: string): Promise<model.TwoFactorAuthenticationRegistrationResponse | model.ErrorResponse>;
24
25
  removeTwoFactorAuthentication(username: string, otp: string): Promise<void | model.ErrorResponse>;
26
+ searchUsers(request: model.UserSearchRequest, parameters?: Record<string, any>): Promise<model.UserResponse[] | model.ErrorResponse>;
27
+ searchUsersPaginated(request: model.UserSearchRequest, previous?: Paginated<model.UserResponse>, page?: number, size?: number, sort?: string): Promise<model.ErrorResponse | Paginated<model.UserResponse>>;
28
+ getAllUsersPaginated(previous?: Paginated<model.UserResponse>, page?: number, size?: number, sort?: string, providerCode?: string): Promise<model.ErrorResponse | Paginated<model.UserResponse>>;
25
29
  }
@@ -58,5 +58,24 @@ export class Users extends Collection {
58
58
  async removeTwoFactorAuthentication(username, otp) {
59
59
  return await this.connection.remove(`users/${username}/two-factor`, undefined, undefined, { "x-otp": otp });
60
60
  }
61
+ async searchUsers(request, parameters) {
62
+ const result = await this.connection.post(`users/searches`, request, parameters);
63
+ return this.extractResponse(result);
64
+ }
65
+ async searchUsersPaginated(request, previous, page, size, sort = "createdOn,desc") {
66
+ return await this.getNextPaginated(previous, (page, size, sort, request) => this.connection.post(`users/searches`, request, {
67
+ page: page,
68
+ size: size,
69
+ sort: sort,
70
+ }), request, page, size, sort);
71
+ }
72
+ async getAllUsersPaginated(previous, page, size, sort = "createdOn,desc", providerCode = "modulr") {
73
+ return await this.getNextPaginated(previous, (page, size, sort) => this.connection.get(`users`, {
74
+ page: page,
75
+ size: size,
76
+ sort: sort,
77
+ provider: providerCode,
78
+ }), undefined, page, size, sort);
79
+ }
61
80
  }
62
81
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../","sources":["Client/Users/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../","sources":["Client/Users/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,17 @@
1
+ import { Date } from "isoly";
2
+ import { Range } from "./Range";
3
+ import { UserStatus } from "./UserStatus";
1
4
  export interface UserSearchRequest {
2
5
  username?: string;
6
+ usernameContains?: string;
3
7
  firstName?: string;
8
+ firstNameContains?: string;
4
9
  lastName?: string;
10
+ lastNameContains?: string;
5
11
  email?: string;
6
12
  category?: string;
13
+ status?: UserStatus[];
14
+ lastLoggedIn?: Range<Date>;
15
+ roleset?: string;
16
+ fuzzySearch?: string;
7
17
  }
@@ -1,7 +1,18 @@
1
+ import { Date } from "isoly"
2
+ import { Range } from "./Range"
3
+ import { UserStatus } from "./UserStatus"
4
+
1
5
  export interface UserSearchRequest {
2
6
  username?: string
7
+ usernameContains?: string
3
8
  firstName?: string
9
+ firstNameContains?: string
4
10
  lastName?: string
11
+ lastNameContains?: string
5
12
  email?: string
6
13
  category?: string
14
+ status?: UserStatus[]
15
+ lastLoggedIn?: Range<Date>
16
+ roleset?: string
17
+ fuzzySearch?: string
7
18
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pax2pay/client",
3
- "version": "0.3.7",
3
+ "version": "0.3.8",
4
4
  "description": "Client library for the Pax2Pay API",
5
5
  "author": "Pax2Pay Ltd.",
6
6
  "license": "MIT",