rotacloud 1.0.40 → 1.0.41
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/dist/cjs/models/SDKError.model.d.ts +11 -0
- package/dist/cjs/models/SDKError.model.js +15 -0
- package/dist/cjs/models/index.d.ts +1 -1
- package/dist/cjs/models/index.js +1 -1
- package/dist/cjs/services/accounts.service.js +3 -2
- package/dist/cjs/services/attendance.service.js +10 -5
- package/dist/cjs/services/auth.service.js +3 -2
- package/dist/cjs/services/availability.service.js +1 -2
- package/dist/cjs/services/daily-budgets.service.js +1 -2
- package/dist/cjs/services/daily-revenue.service.js +1 -2
- package/dist/cjs/services/day-notes.service.js +10 -5
- package/dist/cjs/services/days-off.service.js +2 -3
- package/dist/cjs/services/groups.service.js +10 -5
- package/dist/cjs/services/leave-embargoes.service.js +10 -5
- package/dist/cjs/services/leave-request.service.js +10 -5
- package/dist/cjs/services/leave.service.js +10 -5
- package/dist/cjs/services/locations.service.js +10 -5
- package/dist/cjs/services/roles.service.js +10 -5
- package/dist/cjs/services/service.d.ts +2 -0
- package/dist/cjs/services/service.js +23 -1
- package/dist/cjs/services/settings.service.js +3 -2
- package/dist/cjs/services/shifts.service.d.ts +3 -3
- package/dist/cjs/services/shifts.service.js +21 -9
- package/dist/cjs/services/users.service.js +10 -5
- package/dist/cjs/version.js +1 -1
- package/dist/mjs/models/SDKError.model.d.ts +11 -0
- package/dist/mjs/models/SDKError.model.js +10 -0
- package/dist/mjs/models/index.d.ts +1 -1
- package/dist/mjs/models/index.js +1 -1
- package/dist/mjs/services/accounts.service.js +3 -2
- package/dist/mjs/services/attendance.service.js +10 -5
- package/dist/mjs/services/auth.service.js +3 -2
- package/dist/mjs/services/availability.service.js +1 -2
- package/dist/mjs/services/daily-budgets.service.js +1 -2
- package/dist/mjs/services/daily-revenue.service.js +1 -2
- package/dist/mjs/services/day-notes.service.js +10 -5
- package/dist/mjs/services/days-off.service.js +2 -3
- package/dist/mjs/services/groups.service.js +10 -5
- package/dist/mjs/services/leave-embargoes.service.js +10 -5
- package/dist/mjs/services/leave-request.service.js +10 -5
- package/dist/mjs/services/leave.service.js +10 -5
- package/dist/mjs/services/locations.service.js +10 -5
- package/dist/mjs/services/roles.service.js +10 -5
- package/dist/mjs/services/service.d.ts +2 -0
- package/dist/mjs/services/service.js +22 -1
- package/dist/mjs/services/settings.service.js +3 -2
- package/dist/mjs/services/shifts.service.d.ts +3 -3
- package/dist/mjs/services/shifts.service.js +21 -9
- package/dist/mjs/services/users.service.js +10 -5
- package/dist/mjs/version.js +1 -1
- package/package.json +1 -1
- package/src/models/SDKError.model.ts +20 -0
- package/src/models/index.ts +1 -1
- package/src/services/accounts.service.ts +3 -5
- package/src/services/attendance.service.ts +10 -17
- package/src/services/auth.service.ts +3 -5
- package/src/services/availability.service.ts +1 -5
- package/src/services/daily-budgets.service.ts +1 -5
- package/src/services/daily-revenue.service.ts +1 -5
- package/src/services/day-notes.service.ts +10 -18
- package/src/services/days-off.service.ts +2 -10
- package/src/services/groups.service.ts +10 -18
- package/src/services/leave-embargoes.service.ts +10 -17
- package/src/services/leave-request.service.ts +10 -17
- package/src/services/leave.service.ts +11 -17
- package/src/services/locations.service.ts +11 -17
- package/src/services/roles.service.ts +11 -17
- package/src/services/service.ts +29 -2
- package/src/services/settings.service.ts +4 -5
- package/src/services/shifts.service.ts +28 -34
- package/src/services/users.service.ts +11 -17
- package/src/version.ts +1 -1
- package/dist/cjs/models/error-response.model.d.ts +0 -8
- package/dist/cjs/models/error-response.model.js +0 -13
- package/dist/mjs/models/error-response.model.d.ts +0 -8
- package/dist/mjs/models/error-response.model.js +0 -8
- package/src/models/error-response.model.ts +0 -14
|
@@ -24,11 +24,11 @@ export declare class ShiftsService extends Service {
|
|
|
24
24
|
rawResponse: true;
|
|
25
25
|
} & Options): Promise<AxiosResponse<ApiShift, any>>;
|
|
26
26
|
update(id: number, data: Partial<ApiShift>, options: Options): Promise<Shift>;
|
|
27
|
-
delete(
|
|
28
|
-
delete(
|
|
27
|
+
delete(ids: number | number[]): Promise<number>;
|
|
28
|
+
delete(ids: number | number[], options: {
|
|
29
29
|
rawResponse: true;
|
|
30
30
|
} & Options): Promise<AxiosResponse<any, any>>;
|
|
31
|
-
delete(
|
|
31
|
+
delete(ids: number | number[], options: Options): Promise<number>;
|
|
32
32
|
acknowledge(data: number[]): Promise<number>;
|
|
33
33
|
acknowledge(data: number[], options: {
|
|
34
34
|
rawResponse: true;
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import { Service } from './index.js';
|
|
2
2
|
import { Shift } from '../models/shift.model.js';
|
|
3
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
4
3
|
export class ShiftsService extends Service {
|
|
5
4
|
constructor() {
|
|
6
5
|
super(...arguments);
|
|
7
6
|
this.apiPath = '/shifts';
|
|
8
7
|
}
|
|
9
8
|
create(data, options) {
|
|
10
|
-
return super
|
|
9
|
+
return super
|
|
10
|
+
.fetch({ url: this.apiPath, data, method: 'POST' })
|
|
11
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Shift(res.data)));
|
|
11
12
|
}
|
|
12
13
|
get(id, options) {
|
|
13
|
-
return super
|
|
14
|
+
return super
|
|
15
|
+
.fetch({ url: `${this.apiPath}/${id}` }, options)
|
|
16
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Shift(res.data)));
|
|
14
17
|
}
|
|
15
18
|
async *list(query, options) {
|
|
16
19
|
for await (const res of super.iterator({ url: this.apiPath, params: query }, options)) {
|
|
@@ -34,18 +37,27 @@ export class ShiftsService extends Service {
|
|
|
34
37
|
data,
|
|
35
38
|
method: 'POST',
|
|
36
39
|
})
|
|
37
|
-
.then((res) => Promise.resolve(options?.rawResponse ? res : new Shift(res.data))
|
|
40
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Shift(res.data)));
|
|
38
41
|
}
|
|
39
|
-
delete(
|
|
40
|
-
|
|
42
|
+
delete(ids, options) {
|
|
43
|
+
const params = typeof ids !== 'number'
|
|
44
|
+
? { url: this.apiPath, data: ids, method: 'DELETE' }
|
|
45
|
+
: { url: `${this.apiPath}/${ids}`, method: 'DELETE' };
|
|
46
|
+
return super.fetch(params).then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
41
47
|
}
|
|
42
48
|
acknowledge(data, options) {
|
|
43
|
-
return super
|
|
49
|
+
return super
|
|
50
|
+
.fetch({ url: '/shifts_acknowledged', data, method: 'POST' })
|
|
51
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
44
52
|
}
|
|
45
53
|
publish(data, options) {
|
|
46
|
-
return super
|
|
54
|
+
return super
|
|
55
|
+
.fetch({ url: '/shifts_published', data, method: 'POST' })
|
|
56
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
47
57
|
}
|
|
48
58
|
unpublish(data, options) {
|
|
49
|
-
return super
|
|
59
|
+
return super
|
|
60
|
+
.fetch({ url: '/shifts_published', data, method: 'DELETE' })
|
|
61
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
50
62
|
}
|
|
51
63
|
}
|
|
@@ -1,16 +1,19 @@
|
|
|
1
1
|
import { Service } from './index.js';
|
|
2
2
|
import { User } from '../models/user.model.js';
|
|
3
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
4
3
|
class UsersService extends Service {
|
|
5
4
|
constructor() {
|
|
6
5
|
super(...arguments);
|
|
7
6
|
this.apiPath = '/users';
|
|
8
7
|
}
|
|
9
8
|
create(data, options) {
|
|
10
|
-
return super
|
|
9
|
+
return super
|
|
10
|
+
.fetch({ url: this.apiPath, data, method: 'POST' })
|
|
11
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new User(res.data)));
|
|
11
12
|
}
|
|
12
13
|
get(id, options) {
|
|
13
|
-
return super
|
|
14
|
+
return super
|
|
15
|
+
.fetch({ url: `${this.apiPath}/${id}` }, options)
|
|
16
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new User(res.data)));
|
|
14
17
|
}
|
|
15
18
|
async *list(query, options) {
|
|
16
19
|
for await (const res of super.iterator({ url: this.apiPath, params: query }, options)) {
|
|
@@ -34,10 +37,12 @@ class UsersService extends Service {
|
|
|
34
37
|
data,
|
|
35
38
|
method: 'POST',
|
|
36
39
|
})
|
|
37
|
-
.then((res) => Promise.resolve(options?.rawResponse ? res : new User(res.data))
|
|
40
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new User(res.data)));
|
|
38
41
|
}
|
|
39
42
|
delete(id, options) {
|
|
40
|
-
return super
|
|
43
|
+
return super
|
|
44
|
+
.fetch({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
45
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
41
46
|
}
|
|
42
47
|
}
|
|
43
48
|
export { UsersService };
|
package/dist/mjs/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const Version = { version: '1.0.
|
|
1
|
+
export const Version = { version: '1.0.41' };
|
package/package.json
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface SDKErrorConfig {
|
|
2
|
+
message?: string;
|
|
3
|
+
code?: number;
|
|
4
|
+
data?: unknown;
|
|
5
|
+
}
|
|
6
|
+
export class SDKError extends Error {
|
|
7
|
+
readonly code?: number;
|
|
8
|
+
readonly data?: unknown;
|
|
9
|
+
override name = this.constructor.name;
|
|
10
|
+
|
|
11
|
+
constructor(errorConfig: SDKErrorConfig) {
|
|
12
|
+
super(errorConfig.message);
|
|
13
|
+
|
|
14
|
+
Error.captureStackTrace?.(this, SDKError);
|
|
15
|
+
// optional chaining needed as is v8 specific https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#static_methods
|
|
16
|
+
|
|
17
|
+
this.data = errorConfig.data;
|
|
18
|
+
this.code = errorConfig.code;
|
|
19
|
+
}
|
|
20
|
+
}
|
package/src/models/index.ts
CHANGED
|
@@ -9,7 +9,7 @@ export * from './day-note.model.js';
|
|
|
9
9
|
export * from './days-off-pattern.model.js';
|
|
10
10
|
export * from './days-off.model.js';
|
|
11
11
|
export * from './document.model.js';
|
|
12
|
-
export * from './
|
|
12
|
+
export * from './SDKError.model.js';
|
|
13
13
|
export * from './group.model.js';
|
|
14
14
|
export * from './holiday-allowance-custom.model.js';
|
|
15
15
|
export * from './holiday-allowance.model.js';
|
|
@@ -3,7 +3,6 @@ import { Account } from '../models/account.model.js';
|
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { ApiAccount } from '../interfaces/index.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
|
|
8
7
|
class AccountsService extends Service {
|
|
9
8
|
private apiPath = '/accounts';
|
|
@@ -12,10 +11,9 @@ class AccountsService extends Service {
|
|
|
12
11
|
get(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiAccount, any>>;
|
|
13
12
|
get(id: number, options: Options): Promise<Account>;
|
|
14
13
|
get(id: number, options?: Options) {
|
|
15
|
-
return super
|
|
16
|
-
(
|
|
17
|
-
(
|
|
18
|
-
);
|
|
14
|
+
return super
|
|
15
|
+
.fetch<ApiAccount>({ url: `${this.apiPath}/${id}` }, options)
|
|
16
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Account(res.data)));
|
|
19
17
|
}
|
|
20
18
|
|
|
21
19
|
async *list(options?: Options) {
|
|
@@ -3,7 +3,6 @@ import { ApiAttendance } from '../interfaces/index.js';
|
|
|
3
3
|
import { Service, Options, RequirementsOf } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { Attendance } from '../models/attendance.model.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
import { AttendanceQueryParams } from '../interfaces/query-params/attendance-query-params.interface.js';
|
|
8
7
|
|
|
9
8
|
type RequiredProps = 'user' | 'in_time';
|
|
@@ -18,20 +17,18 @@ export class AttendanceService extends Service {
|
|
|
18
17
|
): Promise<AxiosResponse<ApiAttendance, any>>;
|
|
19
18
|
create(data: RequirementsOf<ApiAttendance, RequiredProps>, options: Options): Promise<ApiAttendance>;
|
|
20
19
|
create(data: RequirementsOf<ApiAttendance, RequiredProps>, options?: Options) {
|
|
21
|
-
return super
|
|
22
|
-
(
|
|
23
|
-
(
|
|
24
|
-
);
|
|
20
|
+
return super
|
|
21
|
+
.fetch<ApiAttendance>({ url: this.apiPath, data, method: 'POST' })
|
|
22
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Attendance(res.data)));
|
|
25
23
|
}
|
|
26
24
|
|
|
27
25
|
get(id: number): Promise<Attendance>;
|
|
28
26
|
get(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiAttendance, any>>;
|
|
29
27
|
get(id: number, options: Options): Promise<Attendance>;
|
|
30
28
|
get(id: number, options?: Options) {
|
|
31
|
-
return super.fetch<ApiAttendance>({ url: `${this.apiPath}/${id}` }, options).then(
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
);
|
|
29
|
+
return super.fetch<ApiAttendance>({ url: `${this.apiPath}/${id}` }, options).then((res) => {
|
|
30
|
+
return Promise.resolve(options?.rawResponse ? res : new Attendance(res.data));
|
|
31
|
+
});
|
|
35
32
|
}
|
|
36
33
|
|
|
37
34
|
async *list(query: AttendanceQueryParams, options?: Options) {
|
|
@@ -67,19 +64,15 @@ export class AttendanceService extends Service {
|
|
|
67
64
|
data,
|
|
68
65
|
method: 'POST',
|
|
69
66
|
})
|
|
70
|
-
.then(
|
|
71
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new Attendance(res.data)),
|
|
72
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
73
|
-
);
|
|
67
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Attendance(res.data)));
|
|
74
68
|
}
|
|
75
69
|
|
|
76
70
|
delete(id: number): Promise<number>;
|
|
77
71
|
delete(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiAttendance, any>>;
|
|
78
72
|
delete(id: number, options: Options): Promise<number>;
|
|
79
73
|
delete(id: number, options?: Options) {
|
|
80
|
-
return super
|
|
81
|
-
(
|
|
82
|
-
(
|
|
83
|
-
);
|
|
74
|
+
return super
|
|
75
|
+
.fetch<ApiAttendance>({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
76
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
84
77
|
}
|
|
85
78
|
}
|
|
@@ -3,7 +3,6 @@ import { ApiAuth } from '../interfaces/index.js';
|
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { Auth } from '../models/auth.model.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
|
|
8
7
|
export class AuthService extends Service {
|
|
9
8
|
private apiPath = '/auth';
|
|
@@ -11,9 +10,8 @@ export class AuthService extends Service {
|
|
|
11
10
|
get(options?: { rawResponse: true } & Options): Promise<AxiosResponse<ApiAuth, any>>;
|
|
12
11
|
get(options?: Options): Promise<Auth>;
|
|
13
12
|
get(options?: Options) {
|
|
14
|
-
return super
|
|
15
|
-
(
|
|
16
|
-
(
|
|
17
|
-
);
|
|
13
|
+
return super
|
|
14
|
+
.fetch<ApiAuth>({ url: this.apiPath }, options)
|
|
15
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Auth(res.data)));
|
|
18
16
|
}
|
|
19
17
|
}
|
|
@@ -4,7 +4,6 @@ import { Service, Options } from './index.js';
|
|
|
4
4
|
import { AvailabilityQueryParams } from '../interfaces/query-params/availability-query-params.interface.js';
|
|
5
5
|
import { Availability } from '../models/availability.model.js';
|
|
6
6
|
import { ApiAvailability } from '../interfaces/availability.interface.js';
|
|
7
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
8
7
|
|
|
9
8
|
export class AvailabilityService extends Service {
|
|
10
9
|
private apiPath = '/availability';
|
|
@@ -19,10 +18,7 @@ export class AvailabilityService extends Service {
|
|
|
19
18
|
data,
|
|
20
19
|
method: 'POST',
|
|
21
20
|
})
|
|
22
|
-
.then(
|
|
23
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new Availability(res.data)),
|
|
24
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
25
|
-
);
|
|
21
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Availability(res.data)));
|
|
26
22
|
}
|
|
27
23
|
|
|
28
24
|
/** Alias of {@link AvailabilityService["update"]} */
|
|
@@ -3,7 +3,6 @@ import { ApiDailyBudgets } from '../interfaces/daily-budgets.interface.js';
|
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { DailyBudgets } from '../models/daily-budgets.model.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
import { DailyBudgetsQueryParams } from '../interfaces/query-params/daily-budgets-query-params.interface.js';
|
|
8
7
|
|
|
9
8
|
export class DailyBudgetsService extends Service {
|
|
@@ -41,9 +40,6 @@ export class DailyBudgetsService extends Service {
|
|
|
41
40
|
data,
|
|
42
41
|
method: 'POST',
|
|
43
42
|
})
|
|
44
|
-
.then(
|
|
45
|
-
(res) => Promise.resolve(options?.rawResponse ? res : res.status),
|
|
46
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
47
|
-
);
|
|
43
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
48
44
|
}
|
|
49
45
|
}
|
|
@@ -3,7 +3,6 @@ import { ApiDailyRevenue } from '../interfaces/daily-revenue.interface.js';
|
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { DailyRevenue } from '../models/daily-revenue.model.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
import { DailyRevenueQueryParams } from '../interfaces/query-params/daily-revenue-query-params.interface.js';
|
|
8
7
|
|
|
9
8
|
export class DailyRevenueService extends Service {
|
|
@@ -41,9 +40,6 @@ export class DailyRevenueService extends Service {
|
|
|
41
40
|
data,
|
|
42
41
|
method: 'POST',
|
|
43
42
|
})
|
|
44
|
-
.then(
|
|
45
|
-
(res) => Promise.resolve(options?.rawResponse ? res : res.status),
|
|
46
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
47
|
-
);
|
|
43
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
48
44
|
}
|
|
49
45
|
}
|
|
@@ -2,8 +2,6 @@ import { AxiosResponse } from 'axios';
|
|
|
2
2
|
import { ApiDayNote } from '../interfaces/index.js';
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
6
|
-
|
|
7
5
|
import { DayNote } from '../models/day-note.model.js';
|
|
8
6
|
import { DayNotesQueryParams } from '../interfaces/query-params/day-notes-query-params.interface';
|
|
9
7
|
|
|
@@ -14,20 +12,18 @@ export class DayNotesService extends Service {
|
|
|
14
12
|
create(data: ApiDayNote, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiDayNote, any>>;
|
|
15
13
|
create(data: ApiDayNote, options: Options): Promise<DayNote>;
|
|
16
14
|
create(data: ApiDayNote, options?: Options) {
|
|
17
|
-
return super
|
|
18
|
-
(
|
|
19
|
-
(
|
|
20
|
-
);
|
|
15
|
+
return super
|
|
16
|
+
.fetch<ApiDayNote>({ url: this.apiPath, data, method: 'POST' })
|
|
17
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new DayNote(res.data)));
|
|
21
18
|
}
|
|
22
19
|
|
|
23
20
|
get(id: number): Promise<DayNote>;
|
|
24
21
|
get(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiDayNote, any>>;
|
|
25
22
|
get(id: number, options: Options): Promise<DayNote>;
|
|
26
23
|
get(id: number, options?: Options) {
|
|
27
|
-
return super
|
|
28
|
-
(
|
|
29
|
-
(
|
|
30
|
-
);
|
|
24
|
+
return super
|
|
25
|
+
.fetch<ApiDayNote>({ url: `${this.apiPath}/${id}` }, options)
|
|
26
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new DayNote(res.data)));
|
|
31
27
|
}
|
|
32
28
|
|
|
33
29
|
async *list(query: DayNotesQueryParams, options?: Options) {
|
|
@@ -63,19 +59,15 @@ export class DayNotesService extends Service {
|
|
|
63
59
|
data,
|
|
64
60
|
method: 'POST',
|
|
65
61
|
})
|
|
66
|
-
.then(
|
|
67
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new DayNote(res.data)),
|
|
68
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
69
|
-
);
|
|
62
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new DayNote(res.data)));
|
|
70
63
|
}
|
|
71
64
|
|
|
72
65
|
delete(id: number): Promise<number>;
|
|
73
66
|
delete(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<any, any>>;
|
|
74
67
|
delete(id: number, options: Options): Promise<number>;
|
|
75
68
|
delete(id: number, options?: Options) {
|
|
76
|
-
return super
|
|
77
|
-
(
|
|
78
|
-
(
|
|
79
|
-
);
|
|
69
|
+
return super
|
|
70
|
+
.fetch<ApiDayNote>({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
71
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
80
72
|
}
|
|
81
73
|
}
|
|
@@ -2,8 +2,6 @@ import { AxiosResponse } from 'axios';
|
|
|
2
2
|
import { ApiDaysOff } from '../interfaces/index.js';
|
|
3
3
|
import { Service, Options } from './index.js';
|
|
4
4
|
|
|
5
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
6
|
-
|
|
7
5
|
import { DaysOff } from '../models/days-off.model.js';
|
|
8
6
|
import { DaysOffQueryParams } from '../interfaces/query-params/days-off-query-params.interface.js';
|
|
9
7
|
|
|
@@ -27,10 +25,7 @@ export class DaysOffService extends Service<ApiDaysOff> {
|
|
|
27
25
|
},
|
|
28
26
|
method: 'POST',
|
|
29
27
|
})
|
|
30
|
-
.then(
|
|
31
|
-
(res) => Promise.resolve(options?.rawResponse ? res : res.status),
|
|
32
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
33
|
-
);
|
|
28
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
34
29
|
}
|
|
35
30
|
|
|
36
31
|
async *list(query: DaysOffQueryParams, options?: Options) {
|
|
@@ -65,9 +60,6 @@ export class DaysOffService extends Service<ApiDaysOff> {
|
|
|
65
60
|
users,
|
|
66
61
|
},
|
|
67
62
|
})
|
|
68
|
-
.then(
|
|
69
|
-
(res) => Promise.resolve(options?.rawResponse ? res : res.status),
|
|
70
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
71
|
-
);
|
|
63
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
72
64
|
}
|
|
73
65
|
}
|
|
@@ -2,8 +2,6 @@ import { AxiosResponse } from 'axios';
|
|
|
2
2
|
import { ApiGroup } from '../interfaces/index.js';
|
|
3
3
|
import { Service, Options, RequirementsOf } from './index.js';
|
|
4
4
|
|
|
5
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
6
|
-
|
|
7
5
|
import { Group } from '../models/group.model.js';
|
|
8
6
|
import { GroupsQueryParams } from '../interfaces/query-params/groups-query-params.interface.js';
|
|
9
7
|
|
|
@@ -19,20 +17,18 @@ export class GroupsService extends Service {
|
|
|
19
17
|
): Promise<AxiosResponse<ApiGroup, any>>;
|
|
20
18
|
create(data: RequirementsOf<ApiGroup, RequiredProps>, options: Options): Promise<Group>;
|
|
21
19
|
create(data: RequirementsOf<ApiGroup, RequiredProps>, options?: Options) {
|
|
22
|
-
return super
|
|
23
|
-
(
|
|
24
|
-
(
|
|
25
|
-
);
|
|
20
|
+
return super
|
|
21
|
+
.fetch<ApiGroup>({ url: this.apiPath, data, method: 'POST' })
|
|
22
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Group(res.data)));
|
|
26
23
|
}
|
|
27
24
|
|
|
28
25
|
get(id: number): Promise<Group>;
|
|
29
26
|
get(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiGroup, any>>;
|
|
30
27
|
get(id: number, options: Options): Promise<Group>;
|
|
31
28
|
get(id: number, options?: Options) {
|
|
32
|
-
return super
|
|
33
|
-
(
|
|
34
|
-
(
|
|
35
|
-
);
|
|
29
|
+
return super
|
|
30
|
+
.fetch<ApiGroup>({ url: `${this.apiPath}/${id}` }, options)
|
|
31
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Group(res.data)));
|
|
36
32
|
}
|
|
37
33
|
|
|
38
34
|
async *list(query?: GroupsQueryParams, options?: Options) {
|
|
@@ -68,19 +64,15 @@ export class GroupsService extends Service {
|
|
|
68
64
|
data,
|
|
69
65
|
method: 'POST',
|
|
70
66
|
})
|
|
71
|
-
.then(
|
|
72
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new Group(res.data)),
|
|
73
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
74
|
-
);
|
|
67
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new Group(res.data)));
|
|
75
68
|
}
|
|
76
69
|
|
|
77
70
|
delete(id: number): Promise<number>;
|
|
78
71
|
delete(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<any, any>>;
|
|
79
72
|
delete(id: number, options: Options): Promise<number>;
|
|
80
73
|
delete(id: number, options?: Options) {
|
|
81
|
-
return super
|
|
82
|
-
(
|
|
83
|
-
(
|
|
84
|
-
);
|
|
74
|
+
return super
|
|
75
|
+
.fetch<ApiGroup>({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
76
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
85
77
|
}
|
|
86
78
|
}
|
|
@@ -3,7 +3,6 @@ import { ApiLeaveEmbargo } from '../interfaces/index.js';
|
|
|
3
3
|
import { Service, Options, RequirementsOf } from './index.js';
|
|
4
4
|
|
|
5
5
|
import { LeaveEmbargo } from '../models/leave-embargo.model.js';
|
|
6
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
7
6
|
import { LeaveEmbargoesQueryParams } from '../rotacloud.js';
|
|
8
7
|
|
|
9
8
|
type RequiredProps = 'start_date' | 'end_date' | 'users';
|
|
@@ -18,20 +17,18 @@ export class LeaveEmbargoesService extends Service {
|
|
|
18
17
|
): Promise<AxiosResponse<ApiLeaveEmbargo, any>>;
|
|
19
18
|
create(data: RequirementsOf<ApiLeaveEmbargo, RequiredProps>, options: Options): Promise<LeaveEmbargo>;
|
|
20
19
|
create(data: RequirementsOf<ApiLeaveEmbargo, RequiredProps>, options?: Options) {
|
|
21
|
-
return super
|
|
22
|
-
(
|
|
23
|
-
(
|
|
24
|
-
);
|
|
20
|
+
return super
|
|
21
|
+
.fetch<ApiLeaveEmbargo>({ url: this.apiPath, data, method: 'POST' })
|
|
22
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveEmbargo(res.data)));
|
|
25
23
|
}
|
|
26
24
|
|
|
27
25
|
get(id: number): Promise<LeaveEmbargo>;
|
|
28
26
|
get(id: number, options: { rawResponse: true }): Promise<AxiosResponse<ApiLeaveEmbargo, any>>;
|
|
29
27
|
get(id: number, options: Options): Promise<LeaveEmbargo>;
|
|
30
28
|
get(id: number, options?: Options) {
|
|
31
|
-
return super
|
|
32
|
-
(
|
|
33
|
-
(
|
|
34
|
-
);
|
|
29
|
+
return super
|
|
30
|
+
.fetch<ApiLeaveEmbargo>({ url: `${this.apiPath}/${id}` }, options)
|
|
31
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveEmbargo(res.data)));
|
|
35
32
|
}
|
|
36
33
|
|
|
37
34
|
async *list(query: LeaveEmbargoesQueryParams, options?: Options) {
|
|
@@ -67,19 +64,15 @@ export class LeaveEmbargoesService extends Service {
|
|
|
67
64
|
data,
|
|
68
65
|
method: 'POST',
|
|
69
66
|
})
|
|
70
|
-
.then(
|
|
71
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new LeaveEmbargo(res.data)),
|
|
72
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
73
|
-
);
|
|
67
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveEmbargo(res.data)));
|
|
74
68
|
}
|
|
75
69
|
|
|
76
70
|
delete(id: number): Promise<number>;
|
|
77
71
|
delete(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<any, any>>;
|
|
78
72
|
delete(id: number, options: Options): Promise<number>;
|
|
79
73
|
delete(id: number, options?: Options) {
|
|
80
|
-
return super
|
|
81
|
-
(
|
|
82
|
-
(
|
|
83
|
-
);
|
|
74
|
+
return super
|
|
75
|
+
.fetch<ApiLeaveEmbargo>({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
76
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
84
77
|
}
|
|
85
78
|
}
|
|
@@ -2,7 +2,6 @@ import { AxiosResponse } from 'axios';
|
|
|
2
2
|
import { ApiLeaveRequest } from '../interfaces/index.js';
|
|
3
3
|
import { Service, Options, RequirementsOf } from './index.js';
|
|
4
4
|
|
|
5
|
-
import { ErrorResponse } from '../models/error-response.model.js';
|
|
6
5
|
import { LeaveRequestsQueryParams } from '../interfaces/query-params/leave-requests-query-params.interface.js';
|
|
7
6
|
|
|
8
7
|
import { LeaveRequest } from '../models/leave-request.model.js';
|
|
@@ -19,20 +18,18 @@ export class LeaveRequestService extends Service {
|
|
|
19
18
|
): Promise<AxiosResponse<ApiLeaveRequest, any>>;
|
|
20
19
|
create(data: RequirementsOf<ApiLeaveRequest, RequiredProps>, options: Options): Promise<LeaveRequest>;
|
|
21
20
|
create(data: RequirementsOf<ApiLeaveRequest, RequiredProps>, options?: Options) {
|
|
22
|
-
return super
|
|
23
|
-
(
|
|
24
|
-
(
|
|
25
|
-
);
|
|
21
|
+
return super
|
|
22
|
+
.fetch<ApiLeaveRequest>({ url: this.apiPath, data, method: 'POST' })
|
|
23
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveRequest(res.data)));
|
|
26
24
|
}
|
|
27
25
|
|
|
28
26
|
get(id: number): Promise<LeaveRequest>;
|
|
29
27
|
get(id: number, options: { rawResponse: true }): Promise<AxiosResponse<ApiLeaveRequest, any>>;
|
|
30
28
|
get(id: number, options: Options): Promise<LeaveRequest>;
|
|
31
29
|
get(id: number, options?: Options) {
|
|
32
|
-
return super
|
|
33
|
-
(
|
|
34
|
-
(
|
|
35
|
-
);
|
|
30
|
+
return super
|
|
31
|
+
.fetch<ApiLeaveRequest>({ url: `${this.apiPath}/${id}` }, options)
|
|
32
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveRequest(res.data)));
|
|
36
33
|
}
|
|
37
34
|
|
|
38
35
|
async *list(query?: LeaveRequestsQueryParams, options?: Options) {
|
|
@@ -68,19 +65,15 @@ export class LeaveRequestService extends Service {
|
|
|
68
65
|
data,
|
|
69
66
|
method: 'POST',
|
|
70
67
|
})
|
|
71
|
-
.then(
|
|
72
|
-
(res) => Promise.resolve(options?.rawResponse ? res : new LeaveRequest(res.data)),
|
|
73
|
-
(err) => Promise.reject(options?.rawResponse ? err : new ErrorResponse(err))
|
|
74
|
-
);
|
|
68
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : new LeaveRequest(res.data)));
|
|
75
69
|
}
|
|
76
70
|
|
|
77
71
|
delete(id: number): Promise<number>;
|
|
78
72
|
delete(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiLeaveRequest, any>>;
|
|
79
73
|
delete(id: number, options: Options): Promise<number>;
|
|
80
74
|
delete(id: number, options?: Options) {
|
|
81
|
-
return super
|
|
82
|
-
(
|
|
83
|
-
(
|
|
84
|
-
);
|
|
75
|
+
return super
|
|
76
|
+
.fetch<ApiLeaveRequest>({ url: `${this.apiPath}/${id}`, method: 'DELETE' })
|
|
77
|
+
.then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
85
78
|
}
|
|
86
79
|
}
|