@tryvital/vital-node 1.4.9 → 1.5.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.
package/client/User.ts CHANGED
@@ -5,6 +5,8 @@ import {
5
5
  ClientFacingUser,
6
6
  Providers,
7
7
  ProvidersResponse,
8
+ GetTeamUsersParams,
9
+ GetTeamUsersResponse,
8
10
  } from './models/user_models';
9
11
 
10
12
  export class UserApi {
@@ -29,8 +31,16 @@ export class UserApi {
29
31
  return resp.data;
30
32
  }
31
33
 
32
- public async getAll(): Promise<Array<ClientFacingUser>> {
33
- const resp = await this.client.get(this.baseURL.concat('/user/'));
34
+ public async getAll({
35
+ limit = 100,
36
+ offset = 0,
37
+ }: GetTeamUsersParams = {}): Promise<GetTeamUsersResponse> {
38
+ const url = new URL(this.baseURL.concat('/user/'));
39
+
40
+ url.searchParams.set('limit', String(limit));
41
+ url.searchParams.set('offset', String(offset));
42
+
43
+ const resp = await this.client.get(url.toString());
34
44
  return resp.data;
35
45
  }
36
46
 
@@ -63,9 +73,7 @@ export class UserApi {
63
73
  return resp.data;
64
74
  }
65
75
 
66
- public async refresh(
67
- userId: string,
68
- ): Promise<SuccessResponse> {
76
+ public async refresh(userId: string): Promise<SuccessResponse> {
69
77
  const resp = await this.client.post(
70
78
  this.baseURL.concat(`/user/refresh/${userId}`)
71
79
  );
@@ -51,3 +51,15 @@ export enum Providers {
51
51
  Zwift = 'zwift',
52
52
  Hammerhead = 'hammerhead',
53
53
  }
54
+
55
+ export interface GetTeamUsersParams {
56
+ limit?: number;
57
+ offset?: number;
58
+ }
59
+
60
+ export interface GetTeamUsersResponse {
61
+ users: Array<ClientFacingUser>;
62
+ offset: number;
63
+ limit: number;
64
+ total: number;
65
+ }
@@ -1,12 +1,12 @@
1
1
  import { AxiosInstance } from 'axios';
2
- import { UserIdResponse, SuccessResponse, ClientFacingUser, Providers, ProvidersResponse } from './models/user_models';
2
+ import { UserIdResponse, SuccessResponse, ClientFacingUser, Providers, ProvidersResponse, GetTeamUsersParams, GetTeamUsersResponse } from './models/user_models';
3
3
  export declare class UserApi {
4
4
  baseURL: string;
5
5
  client: AxiosInstance;
6
6
  constructor(baseURL: string, axios: AxiosInstance);
7
7
  create(clientUserId: string): Promise<UserIdResponse>;
8
8
  delete(userId: string): Promise<SuccessResponse>;
9
- getAll(): Promise<Array<ClientFacingUser>>;
9
+ getAll({ limit, offset, }?: GetTeamUsersParams): Promise<GetTeamUsersResponse>;
10
10
  get(userId: string): Promise<ClientFacingUser>;
11
11
  resolve(clientUserId: string): Promise<ClientFacingUser>;
12
12
  providers(userId: string): Promise<ProvidersResponse>;
@@ -70,14 +70,19 @@ var UserApi = /** @class */ (function () {
70
70
  });
71
71
  });
72
72
  };
73
- UserApi.prototype.getAll = function () {
73
+ UserApi.prototype.getAll = function (_a) {
74
+ var _b = _a === void 0 ? {} : _a, _c = _b.limit, limit = _c === void 0 ? 100 : _c, _d = _b.offset, offset = _d === void 0 ? 0 : _d;
74
75
  return __awaiter(this, void 0, void 0, function () {
75
- var resp;
76
- return __generator(this, function (_a) {
77
- switch (_a.label) {
78
- case 0: return [4 /*yield*/, this.client.get(this.baseURL.concat('/user/'))];
76
+ var url, resp;
77
+ return __generator(this, function (_e) {
78
+ switch (_e.label) {
79
+ case 0:
80
+ url = new URL(this.baseURL.concat('/user/'));
81
+ url.searchParams.set('limit', String(limit));
82
+ url.searchParams.set('offset', String(offset));
83
+ return [4 /*yield*/, this.client.get(url.toString())];
79
84
  case 1:
80
- resp = _a.sent();
85
+ resp = _e.sent();
81
86
  return [2 /*return*/, resp.data];
82
87
  }
83
88
  });
@@ -44,3 +44,13 @@ export declare enum Providers {
44
44
  Zwift = "zwift",
45
45
  Hammerhead = "hammerhead"
46
46
  }
47
+ export interface GetTeamUsersParams {
48
+ limit?: number;
49
+ offset?: number;
50
+ }
51
+ export interface GetTeamUsersResponse {
52
+ users: Array<ClientFacingUser>;
53
+ offset: number;
54
+ limit: number;
55
+ total: number;
56
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tryvital/vital-node",
3
- "version": "1.4.9",
3
+ "version": "1.5.0",
4
4
  "description": "Node client for Vital",
5
5
  "author": "maitham",
6
6
  "keywords": [