rotacloud 1.0.53 → 1.0.55
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/.eslintrc.json +2 -2
- package/.github/workflows/check.yml +36 -0
- package/.github/workflows/publish.yml +8 -9
- package/package.json +14 -15
- package/src/services/attendance.service.ts +1 -3
- package/src/services/availability.service.ts +2 -4
- package/src/services/service.ts +51 -82
- package/src/services/shifts.service.ts +45 -14
- package/src/version.ts +1 -1
- package/dist/cjs/interfaces/account-service.interface.d.ts +0 -6
- package/dist/cjs/interfaces/account-service.interface.js +0 -2
- package/dist/cjs/interfaces/account-services.interface.d.ts +0 -6
- package/dist/cjs/interfaces/account-services.interface.js +0 -2
- package/dist/cjs/interfaces/account.interface.d.ts +0 -40
- package/dist/cjs/interfaces/account.interface.js +0 -2
- package/dist/cjs/interfaces/attendance.interface.d.ts +0 -31
- package/dist/cjs/interfaces/attendance.interface.js +0 -2
- package/dist/cjs/interfaces/auth.interface.d.ts +0 -8
- package/dist/cjs/interfaces/auth.interface.js +0 -2
- package/dist/cjs/interfaces/availability-pattern.interface.d.ts +0 -20
- package/dist/cjs/interfaces/availability-pattern.interface.js +0 -2
- package/dist/cjs/interfaces/availability.interface.d.ts +0 -13
- package/dist/cjs/interfaces/availability.interface.js +0 -2
- package/dist/cjs/interfaces/daily-budgets.interface.d.ts +0 -6
- package/dist/cjs/interfaces/daily-budgets.interface.js +0 -2
- package/dist/cjs/interfaces/daily-revenue.interface.d.ts +0 -7
- package/dist/cjs/interfaces/daily-revenue.interface.js +0 -2
- package/dist/cjs/interfaces/day-note.interface.d.ts +0 -9
- package/dist/cjs/interfaces/day-note.interface.js +0 -2
- package/dist/cjs/interfaces/days-off-pattern.interface.d.ts +0 -13
- package/dist/cjs/interfaces/days-off-pattern.interface.js +0 -2
- package/dist/cjs/interfaces/days-off.interface.d.ts +0 -8
- package/dist/cjs/interfaces/days-off.interface.js +0 -2
- package/dist/cjs/interfaces/group.interface.d.ts +0 -7
- package/dist/cjs/interfaces/group.interface.js +0 -2
- package/dist/cjs/interfaces/holiday_allowance.interface.d.ts +0 -11
- package/dist/cjs/interfaces/holiday_allowance.interface.js +0 -2
- package/dist/cjs/interfaces/index.d.ts +0 -37
- package/dist/cjs/interfaces/index.js +0 -49
- package/dist/cjs/interfaces/leave-date.interface.d.ts +0 -8
- package/dist/cjs/interfaces/leave-date.interface.js +0 -2
- package/dist/cjs/interfaces/leave-embargo.interface.d.ts +0 -10
- package/dist/cjs/interfaces/leave-embargo.interface.js +0 -2
- package/dist/cjs/interfaces/leave-rate.interface.d.ts +0 -3
- package/dist/cjs/interfaces/leave-rate.interface.js +0 -2
- package/dist/cjs/interfaces/leave-request.interface.d.ts +0 -13
- package/dist/cjs/interfaces/leave-request.interface.js +0 -2
- package/dist/cjs/interfaces/leave-type.interface.d.ts +0 -8
- package/dist/cjs/interfaces/leave-type.interface.js +0 -2
- package/dist/cjs/interfaces/leave.interface.d.ts +0 -28
- package/dist/cjs/interfaces/leave.interface.js +0 -2
- package/dist/cjs/interfaces/location-coordinate.interface.d.ts +0 -5
- package/dist/cjs/interfaces/location-coordinate.interface.js +0 -2
- package/dist/cjs/interfaces/location.interface.d.ts +0 -13
- package/dist/cjs/interfaces/location.interface.js +0 -2
- package/dist/cjs/interfaces/logbook-category.interface.d.ts +0 -5
- package/dist/cjs/interfaces/logbook-category.interface.js +0 -2
- package/dist/cjs/interfaces/logbook-event.interface.d.ts +0 -16
- package/dist/cjs/interfaces/logbook-event.interface.js +0 -2
- package/dist/cjs/interfaces/pay-period.interface.d.ts +0 -16
- package/dist/cjs/interfaces/pay-period.interface.js +0 -2
- package/dist/cjs/interfaces/pin.interface.d.ts +0 -3
- package/dist/cjs/interfaces/pin.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/attendance-query-params.interface.d.ts +0 -9
- package/dist/cjs/interfaces/query-params/attendance-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/availability-patterns-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/availability-patterns-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/availability-query-params.interface.d.ts +0 -12
- package/dist/cjs/interfaces/query-params/availability-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/common-shift-times-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/common-shift-times-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/daily-budgets-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/daily-budgets-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/daily-revenue-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/daily-revenue-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/day-notes-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/day-notes-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/days-off-patterns-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/days-off-patterns-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/days-off-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/days-off-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/documents-query-params.interface.d.ts +0 -4
- package/dist/cjs/interfaces/query-params/documents-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/groups-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/groups-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/index.d.ts +0 -27
- package/dist/cjs/interfaces/query-params/index.js +0 -39
- package/dist/cjs/interfaces/query-params/internal-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/internal-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/leave-embargoes-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/leave-embargoes-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/leave-query-params.interface.d.ts +0 -13
- package/dist/cjs/interfaces/query-params/leave-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/leave-requests-query-params.interface.d.ts +0 -4
- package/dist/cjs/interfaces/query-params/leave-requests-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/locations-query-params.interface.d.ts +0 -7
- package/dist/cjs/interfaces/query-params/locations-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/logbook-events-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/logbook-events-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/pay-periods-query-params.interface.d.ts +0 -4
- package/dist/cjs/interfaces/query-params/pay-periods-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/roles-query-params.interface.d.ts +0 -5
- package/dist/cjs/interfaces/query-params/roles-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/settings-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/settings-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/shifts-query-params.interface.d.ts +0 -14
- package/dist/cjs/interfaces/query-params/shifts-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/swap-requests-query-params.interface.d.ts +0 -8
- package/dist/cjs/interfaces/query-params/swap-requests-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/terminals-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/terminals-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/toil-accruals-query-params.interface.d.ts +0 -4
- package/dist/cjs/interfaces/query-params/toil-accruals-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/toil-allowance-query-params.interface.d.ts +0 -3
- package/dist/cjs/interfaces/query-params/toil-allowance-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/unavailability-requests-query-params.interface.d.ts +0 -8
- package/dist/cjs/interfaces/query-params/unavailability-requests-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/query-params/users-query-params.interface.d.ts +0 -24
- package/dist/cjs/interfaces/query-params/users-query-params.interface.js +0 -2
- package/dist/cjs/interfaces/role-rate.interface.d.ts +0 -6
- package/dist/cjs/interfaces/role-rate.interface.js +0 -2
- package/dist/cjs/interfaces/role.interface.d.ts +0 -9
- package/dist/cjs/interfaces/role.interface.js +0 -2
- package/dist/cjs/interfaces/sdk-config.interface.d.ts +0 -9
- package/dist/cjs/interfaces/sdk-config.interface.js +0 -2
- package/dist/cjs/interfaces/settings.interface.d.ts +0 -64
- package/dist/cjs/interfaces/settings.interface.js +0 -2
- package/dist/cjs/interfaces/shift.interface.d.ts +0 -25
- package/dist/cjs/interfaces/shift.interface.js +0 -2
- package/dist/cjs/interfaces/terminal.interface.d.ts +0 -20
- package/dist/cjs/interfaces/terminal.interface.js +0 -2
- package/dist/cjs/interfaces/toil-accrual.interface.d.ts +0 -14
- package/dist/cjs/interfaces/toil-accrual.interface.js +0 -2
- package/dist/cjs/interfaces/toil-allowance.interface.d.ts +0 -7
- package/dist/cjs/interfaces/toil-allowance.interface.js +0 -2
- package/dist/cjs/interfaces/user.interface.d.ts +0 -45
- package/dist/cjs/interfaces/user.interface.js +0 -2
- package/dist/cjs/interfaces/users-clocked-in.interface.d.ts +0 -13
- package/dist/cjs/interfaces/users-clocked-in.interface.js +0 -2
- package/dist/cjs/interfaces/users-clocked-out.interface.d.ts +0 -26
- package/dist/cjs/interfaces/users-clocked-out.interface.js +0 -2
- package/dist/cjs/models/SDKError.model.d.ts +0 -11
- package/dist/cjs/models/SDKError.model.js +0 -15
- package/dist/cjs/models/account.model.d.ts +0 -8
- package/dist/cjs/models/account.model.js +0 -12
- package/dist/cjs/models/attendance.model.d.ts +0 -27
- package/dist/cjs/models/attendance.model.js +0 -31
- package/dist/cjs/models/auth.model.d.ts +0 -6
- package/dist/cjs/models/auth.model.js +0 -10
- package/dist/cjs/models/availability-pattern.model.d.ts +0 -17
- package/dist/cjs/models/availability-pattern.model.js +0 -21
- package/dist/cjs/models/availability.model.d.ts +0 -6
- package/dist/cjs/models/availability.model.js +0 -10
- package/dist/cjs/models/daily-budgets.model.d.ts +0 -8
- package/dist/cjs/models/daily-budgets.model.js +0 -12
- package/dist/cjs/models/daily-revenue.model.d.ts +0 -9
- package/dist/cjs/models/daily-revenue.model.js +0 -13
- package/dist/cjs/models/day-note.model.d.ts +0 -11
- package/dist/cjs/models/day-note.model.js +0 -15
- package/dist/cjs/models/days-off-pattern.model.d.ts +0 -15
- package/dist/cjs/models/days-off-pattern.model.js +0 -9
- package/dist/cjs/models/days-off.model.d.ts +0 -6
- package/dist/cjs/models/days-off.model.js +0 -10
- package/dist/cjs/models/document.model.d.ts +0 -12
- package/dist/cjs/models/document.model.js +0 -6
- package/dist/cjs/models/group.model.d.ts +0 -7
- package/dist/cjs/models/group.model.js +0 -11
- package/dist/cjs/models/holiday-allowance-custom.model.d.ts +0 -5
- package/dist/cjs/models/holiday-allowance-custom.model.js +0 -6
- package/dist/cjs/models/holiday-allowance.model.d.ts +0 -13
- package/dist/cjs/models/holiday-allowance.model.js +0 -9
- package/dist/cjs/models/index.d.ts +0 -33
- package/dist/cjs/models/index.js +0 -45
- package/dist/cjs/models/leave-embargo.model.d.ts +0 -6
- package/dist/cjs/models/leave-embargo.model.js +0 -10
- package/dist/cjs/models/leave-request.model.d.ts +0 -14
- package/dist/cjs/models/leave-request.model.js +0 -18
- package/dist/cjs/models/leave-type.model.d.ts +0 -10
- package/dist/cjs/models/leave-type.model.js +0 -14
- package/dist/cjs/models/leave.model.d.ts +0 -28
- package/dist/cjs/models/leave.model.js +0 -30
- package/dist/cjs/models/location.model.d.ts +0 -14
- package/dist/cjs/models/location.model.js +0 -18
- package/dist/cjs/models/logbook-category.model.d.ts +0 -7
- package/dist/cjs/models/logbook-category.model.js +0 -12
- package/dist/cjs/models/logbook-event.model.d.ts +0 -5
- package/dist/cjs/models/logbook-event.model.js +0 -9
- package/dist/cjs/models/memo.model.d.ts +0 -8
- package/dist/cjs/models/memo.model.js +0 -6
- package/dist/cjs/models/pay-period.model.d.ts +0 -6
- package/dist/cjs/models/pay-period.model.js +0 -10
- package/dist/cjs/models/role.model.d.ts +0 -11
- package/dist/cjs/models/role.model.js +0 -15
- package/dist/cjs/models/settings.model.d.ts +0 -61
- package/dist/cjs/models/settings.model.js +0 -9
- package/dist/cjs/models/shift.model.d.ts +0 -27
- package/dist/cjs/models/shift.model.js +0 -31
- package/dist/cjs/models/terminal.model.d.ts +0 -16
- package/dist/cjs/models/terminal.model.js +0 -20
- package/dist/cjs/models/toil-accrual.model.d.ts +0 -16
- package/dist/cjs/models/toil-accrual.model.js +0 -20
- package/dist/cjs/models/toil-allowance.model.d.ts +0 -9
- package/dist/cjs/models/toil-allowance.model.js +0 -13
- package/dist/cjs/models/user.model.d.ts +0 -63
- package/dist/cjs/models/user.model.js +0 -44
- package/dist/cjs/models/users-clocked-in.model.d.ts +0 -14
- package/dist/cjs/models/users-clocked-in.model.js +0 -19
- package/dist/cjs/models/users-clocked-out.model.d.ts +0 -27
- package/dist/cjs/models/users-clocked-out.model.js +0 -31
- package/dist/cjs/package.json +0 -3
- package/dist/cjs/rotacloud.d.ts +0 -38
- package/dist/cjs/rotacloud.js +0 -61
- package/dist/cjs/services/accounts.service.d.ts +0 -16
- package/dist/cjs/services/accounts.service.js +0 -89
- package/dist/cjs/services/attendance.service.d.ts +0 -33
- package/dist/cjs/services/attendance.service.js +0 -108
- package/dist/cjs/services/auth.service.d.ts +0 -11
- package/dist/cjs/services/auth.service.js +0 -17
- package/dist/cjs/services/availability.service.d.ts +0 -26
- package/dist/cjs/services/availability.service.js +0 -79
- package/dist/cjs/services/daily-budgets.service.d.ts +0 -16
- package/dist/cjs/services/daily-budgets.service.js +0 -93
- package/dist/cjs/services/daily-revenue.service.d.ts +0 -16
- package/dist/cjs/services/daily-revenue.service.js +0 -93
- package/dist/cjs/services/day-notes.service.d.ts +0 -31
- package/dist/cjs/services/day-notes.service.js +0 -108
- package/dist/cjs/services/days-off.service.d.ts +0 -21
- package/dist/cjs/services/days-off.service.js +0 -108
- package/dist/cjs/services/groups.service.d.ts +0 -33
- package/dist/cjs/services/groups.service.js +0 -108
- package/dist/cjs/services/index.d.ts +0 -24
- package/dist/cjs/services/index.js +0 -36
- package/dist/cjs/services/leave-embargoes.service.d.ts +0 -33
- package/dist/cjs/services/leave-embargoes.service.js +0 -108
- package/dist/cjs/services/leave-request.service.d.ts +0 -33
- package/dist/cjs/services/leave-request.service.js +0 -112
- package/dist/cjs/services/leave-types.service.d.ts +0 -12
- package/dist/cjs/services/leave-types.service.js +0 -17
- package/dist/cjs/services/leave.service.d.ts +0 -35
- package/dist/cjs/services/leave.service.js +0 -130
- package/dist/cjs/services/locations.service.d.ts +0 -33
- package/dist/cjs/services/locations.service.js +0 -108
- package/dist/cjs/services/pins.service.d.ts +0 -11
- package/dist/cjs/services/pins.service.js +0 -16
- package/dist/cjs/services/roles.service.d.ts +0 -33
- package/dist/cjs/services/roles.service.js +0 -108
- package/dist/cjs/services/service.d.ts +0 -44
- package/dist/cjs/services/service.js +0 -197
- package/dist/cjs/services/settings.service.d.ts +0 -14
- package/dist/cjs/services/settings.service.js +0 -17
- package/dist/cjs/services/shifts.service.d.ts +0 -60
- package/dist/cjs/services/shifts.service.js +0 -124
- package/dist/cjs/services/terminals-active.service.d.ts +0 -35
- package/dist/cjs/services/terminals-active.service.js +0 -103
- package/dist/cjs/services/terminals.service.d.ts +0 -32
- package/dist/cjs/services/terminals.service.js +0 -108
- package/dist/cjs/services/toil-accruals.service.d.ts +0 -28
- package/dist/cjs/services/toil-accruals.service.js +0 -99
- package/dist/cjs/services/toil-allowance.service.d.ts +0 -10
- package/dist/cjs/services/toil-allowance.service.js +0 -84
- package/dist/cjs/services/users-clock-in.service.d.ts +0 -62
- package/dist/cjs/services/users-clock-in.service.js +0 -118
- package/dist/cjs/services/users.service.d.ts +0 -33
- package/dist/cjs/services/users.service.js +0 -108
- package/dist/cjs/version.d.ts +0 -3
- package/dist/cjs/version.js +0 -4
- package/dist/mjs/interfaces/account-service.interface.d.ts +0 -6
- package/dist/mjs/interfaces/account-service.interface.js +0 -1
- package/dist/mjs/interfaces/account-services.interface.d.ts +0 -6
- package/dist/mjs/interfaces/account-services.interface.js +0 -1
- package/dist/mjs/interfaces/account.interface.d.ts +0 -40
- package/dist/mjs/interfaces/account.interface.js +0 -1
- package/dist/mjs/interfaces/attendance.interface.d.ts +0 -31
- package/dist/mjs/interfaces/attendance.interface.js +0 -1
- package/dist/mjs/interfaces/auth.interface.d.ts +0 -8
- package/dist/mjs/interfaces/auth.interface.js +0 -1
- package/dist/mjs/interfaces/availability-pattern.interface.d.ts +0 -20
- package/dist/mjs/interfaces/availability-pattern.interface.js +0 -1
- package/dist/mjs/interfaces/availability.interface.d.ts +0 -13
- package/dist/mjs/interfaces/availability.interface.js +0 -1
- package/dist/mjs/interfaces/daily-budgets.interface.d.ts +0 -6
- package/dist/mjs/interfaces/daily-budgets.interface.js +0 -1
- package/dist/mjs/interfaces/daily-revenue.interface.d.ts +0 -7
- package/dist/mjs/interfaces/daily-revenue.interface.js +0 -1
- package/dist/mjs/interfaces/day-note.interface.d.ts +0 -9
- package/dist/mjs/interfaces/day-note.interface.js +0 -1
- package/dist/mjs/interfaces/days-off-pattern.interface.d.ts +0 -13
- package/dist/mjs/interfaces/days-off-pattern.interface.js +0 -1
- package/dist/mjs/interfaces/days-off.interface.d.ts +0 -8
- package/dist/mjs/interfaces/days-off.interface.js +0 -1
- package/dist/mjs/interfaces/group.interface.d.ts +0 -7
- package/dist/mjs/interfaces/group.interface.js +0 -1
- package/dist/mjs/interfaces/holiday_allowance.interface.d.ts +0 -11
- package/dist/mjs/interfaces/holiday_allowance.interface.js +0 -1
- package/dist/mjs/interfaces/index.d.ts +0 -37
- package/dist/mjs/interfaces/index.js +0 -37
- package/dist/mjs/interfaces/leave-date.interface.d.ts +0 -8
- package/dist/mjs/interfaces/leave-date.interface.js +0 -1
- package/dist/mjs/interfaces/leave-embargo.interface.d.ts +0 -10
- package/dist/mjs/interfaces/leave-embargo.interface.js +0 -1
- package/dist/mjs/interfaces/leave-rate.interface.d.ts +0 -3
- package/dist/mjs/interfaces/leave-rate.interface.js +0 -1
- package/dist/mjs/interfaces/leave-request.interface.d.ts +0 -13
- package/dist/mjs/interfaces/leave-request.interface.js +0 -1
- package/dist/mjs/interfaces/leave-type.interface.d.ts +0 -8
- package/dist/mjs/interfaces/leave-type.interface.js +0 -1
- package/dist/mjs/interfaces/leave.interface.d.ts +0 -28
- package/dist/mjs/interfaces/leave.interface.js +0 -1
- package/dist/mjs/interfaces/location-coordinate.interface.d.ts +0 -5
- package/dist/mjs/interfaces/location-coordinate.interface.js +0 -1
- package/dist/mjs/interfaces/location.interface.d.ts +0 -13
- package/dist/mjs/interfaces/location.interface.js +0 -1
- package/dist/mjs/interfaces/logbook-category.interface.d.ts +0 -5
- package/dist/mjs/interfaces/logbook-category.interface.js +0 -1
- package/dist/mjs/interfaces/logbook-event.interface.d.ts +0 -16
- package/dist/mjs/interfaces/logbook-event.interface.js +0 -1
- package/dist/mjs/interfaces/pay-period.interface.d.ts +0 -16
- package/dist/mjs/interfaces/pay-period.interface.js +0 -1
- package/dist/mjs/interfaces/pin.interface.d.ts +0 -3
- package/dist/mjs/interfaces/pin.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/attendance-query-params.interface.d.ts +0 -9
- package/dist/mjs/interfaces/query-params/attendance-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/availability-patterns-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/availability-patterns-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/availability-query-params.interface.d.ts +0 -12
- package/dist/mjs/interfaces/query-params/availability-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/common-shift-times-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/common-shift-times-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/daily-budgets-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/daily-budgets-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/daily-revenue-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/daily-revenue-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/day-notes-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/day-notes-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/days-off-patterns-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/days-off-patterns-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/days-off-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/days-off-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/documents-query-params.interface.d.ts +0 -4
- package/dist/mjs/interfaces/query-params/documents-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/groups-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/groups-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/index.d.ts +0 -27
- package/dist/mjs/interfaces/query-params/index.js +0 -27
- package/dist/mjs/interfaces/query-params/internal-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/internal-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/leave-embargoes-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/leave-embargoes-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/leave-query-params.interface.d.ts +0 -13
- package/dist/mjs/interfaces/query-params/leave-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/leave-requests-query-params.interface.d.ts +0 -4
- package/dist/mjs/interfaces/query-params/leave-requests-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/locations-query-params.interface.d.ts +0 -7
- package/dist/mjs/interfaces/query-params/locations-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/logbook-events-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/logbook-events-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/pay-periods-query-params.interface.d.ts +0 -4
- package/dist/mjs/interfaces/query-params/pay-periods-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/roles-query-params.interface.d.ts +0 -5
- package/dist/mjs/interfaces/query-params/roles-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/settings-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/settings-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/shifts-query-params.interface.d.ts +0 -14
- package/dist/mjs/interfaces/query-params/shifts-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/swap-requests-query-params.interface.d.ts +0 -8
- package/dist/mjs/interfaces/query-params/swap-requests-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/terminals-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/terminals-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/toil-accruals-query-params.interface.d.ts +0 -4
- package/dist/mjs/interfaces/query-params/toil-accruals-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/toil-allowance-query-params.interface.d.ts +0 -3
- package/dist/mjs/interfaces/query-params/toil-allowance-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/unavailability-requests-query-params.interface.d.ts +0 -8
- package/dist/mjs/interfaces/query-params/unavailability-requests-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/query-params/users-query-params.interface.d.ts +0 -24
- package/dist/mjs/interfaces/query-params/users-query-params.interface.js +0 -1
- package/dist/mjs/interfaces/role-rate.interface.d.ts +0 -6
- package/dist/mjs/interfaces/role-rate.interface.js +0 -1
- package/dist/mjs/interfaces/role.interface.d.ts +0 -9
- package/dist/mjs/interfaces/role.interface.js +0 -1
- package/dist/mjs/interfaces/sdk-config.interface.d.ts +0 -9
- package/dist/mjs/interfaces/sdk-config.interface.js +0 -1
- package/dist/mjs/interfaces/settings.interface.d.ts +0 -64
- package/dist/mjs/interfaces/settings.interface.js +0 -1
- package/dist/mjs/interfaces/shift.interface.d.ts +0 -25
- package/dist/mjs/interfaces/shift.interface.js +0 -1
- package/dist/mjs/interfaces/terminal.interface.d.ts +0 -20
- package/dist/mjs/interfaces/terminal.interface.js +0 -1
- package/dist/mjs/interfaces/toil-accrual.interface.d.ts +0 -14
- package/dist/mjs/interfaces/toil-accrual.interface.js +0 -1
- package/dist/mjs/interfaces/toil-allowance.interface.d.ts +0 -7
- package/dist/mjs/interfaces/toil-allowance.interface.js +0 -1
- package/dist/mjs/interfaces/user.interface.d.ts +0 -45
- package/dist/mjs/interfaces/user.interface.js +0 -1
- package/dist/mjs/interfaces/users-clocked-in.interface.d.ts +0 -13
- package/dist/mjs/interfaces/users-clocked-in.interface.js +0 -1
- package/dist/mjs/interfaces/users-clocked-out.interface.d.ts +0 -26
- package/dist/mjs/interfaces/users-clocked-out.interface.js +0 -1
- package/dist/mjs/models/SDKError.model.d.ts +0 -11
- package/dist/mjs/models/SDKError.model.js +0 -10
- package/dist/mjs/models/account.model.d.ts +0 -8
- package/dist/mjs/models/account.model.js +0 -8
- package/dist/mjs/models/attendance.model.d.ts +0 -27
- package/dist/mjs/models/attendance.model.js +0 -27
- package/dist/mjs/models/auth.model.d.ts +0 -6
- package/dist/mjs/models/auth.model.js +0 -6
- package/dist/mjs/models/availability-pattern.model.d.ts +0 -17
- package/dist/mjs/models/availability-pattern.model.js +0 -17
- package/dist/mjs/models/availability.model.d.ts +0 -6
- package/dist/mjs/models/availability.model.js +0 -6
- package/dist/mjs/models/daily-budgets.model.d.ts +0 -8
- package/dist/mjs/models/daily-budgets.model.js +0 -8
- package/dist/mjs/models/daily-revenue.model.d.ts +0 -9
- package/dist/mjs/models/daily-revenue.model.js +0 -9
- package/dist/mjs/models/day-note.model.d.ts +0 -11
- package/dist/mjs/models/day-note.model.js +0 -11
- package/dist/mjs/models/days-off-pattern.model.d.ts +0 -15
- package/dist/mjs/models/days-off-pattern.model.js +0 -5
- package/dist/mjs/models/days-off.model.d.ts +0 -6
- package/dist/mjs/models/days-off.model.js +0 -6
- package/dist/mjs/models/document.model.d.ts +0 -12
- package/dist/mjs/models/document.model.js +0 -2
- package/dist/mjs/models/group.model.d.ts +0 -7
- package/dist/mjs/models/group.model.js +0 -7
- package/dist/mjs/models/holiday-allowance-custom.model.d.ts +0 -5
- package/dist/mjs/models/holiday-allowance-custom.model.js +0 -2
- package/dist/mjs/models/holiday-allowance.model.d.ts +0 -13
- package/dist/mjs/models/holiday-allowance.model.js +0 -5
- package/dist/mjs/models/index.d.ts +0 -33
- package/dist/mjs/models/index.js +0 -33
- package/dist/mjs/models/leave-embargo.model.d.ts +0 -6
- package/dist/mjs/models/leave-embargo.model.js +0 -6
- package/dist/mjs/models/leave-request.model.d.ts +0 -14
- package/dist/mjs/models/leave-request.model.js +0 -14
- package/dist/mjs/models/leave-type.model.d.ts +0 -10
- package/dist/mjs/models/leave-type.model.js +0 -10
- package/dist/mjs/models/leave.model.d.ts +0 -28
- package/dist/mjs/models/leave.model.js +0 -26
- package/dist/mjs/models/location.model.d.ts +0 -14
- package/dist/mjs/models/location.model.js +0 -14
- package/dist/mjs/models/logbook-category.model.d.ts +0 -7
- package/dist/mjs/models/logbook-category.model.js +0 -7
- package/dist/mjs/models/logbook-event.model.d.ts +0 -5
- package/dist/mjs/models/logbook-event.model.js +0 -5
- package/dist/mjs/models/memo.model.d.ts +0 -8
- package/dist/mjs/models/memo.model.js +0 -2
- package/dist/mjs/models/pay-period.model.d.ts +0 -6
- package/dist/mjs/models/pay-period.model.js +0 -6
- package/dist/mjs/models/role.model.d.ts +0 -11
- package/dist/mjs/models/role.model.js +0 -11
- package/dist/mjs/models/settings.model.d.ts +0 -61
- package/dist/mjs/models/settings.model.js +0 -5
- package/dist/mjs/models/shift.model.d.ts +0 -27
- package/dist/mjs/models/shift.model.js +0 -27
- package/dist/mjs/models/terminal.model.d.ts +0 -16
- package/dist/mjs/models/terminal.model.js +0 -16
- package/dist/mjs/models/toil-accrual.model.d.ts +0 -16
- package/dist/mjs/models/toil-accrual.model.js +0 -16
- package/dist/mjs/models/toil-allowance.model.d.ts +0 -9
- package/dist/mjs/models/toil-allowance.model.js +0 -9
- package/dist/mjs/models/user.model.d.ts +0 -63
- package/dist/mjs/models/user.model.js +0 -40
- package/dist/mjs/models/users-clocked-in.model.d.ts +0 -14
- package/dist/mjs/models/users-clocked-in.model.js +0 -14
- package/dist/mjs/models/users-clocked-out.model.d.ts +0 -27
- package/dist/mjs/models/users-clocked-out.model.js +0 -26
- package/dist/mjs/package.json +0 -3
- package/dist/mjs/rotacloud.d.ts +0 -38
- package/dist/mjs/rotacloud.js +0 -49
- package/dist/mjs/services/accounts.service.d.ts +0 -16
- package/dist/mjs/services/accounts.service.js +0 -29
- package/dist/mjs/services/attendance.service.d.ts +0 -33
- package/dist/mjs/services/attendance.service.js +0 -47
- package/dist/mjs/services/auth.service.d.ts +0 -11
- package/dist/mjs/services/auth.service.js +0 -13
- package/dist/mjs/services/availability.service.d.ts +0 -26
- package/dist/mjs/services/availability.service.js +0 -40
- package/dist/mjs/services/daily-budgets.service.d.ts +0 -16
- package/dist/mjs/services/daily-budgets.service.js +0 -32
- package/dist/mjs/services/daily-revenue.service.d.ts +0 -16
- package/dist/mjs/services/daily-revenue.service.js +0 -32
- package/dist/mjs/services/day-notes.service.d.ts +0 -31
- package/dist/mjs/services/day-notes.service.js +0 -47
- package/dist/mjs/services/days-off.service.d.ts +0 -21
- package/dist/mjs/services/days-off.service.js +0 -47
- package/dist/mjs/services/groups.service.d.ts +0 -33
- package/dist/mjs/services/groups.service.js +0 -47
- package/dist/mjs/services/index.d.ts +0 -24
- package/dist/mjs/services/index.js +0 -24
- package/dist/mjs/services/leave-embargoes.service.d.ts +0 -33
- package/dist/mjs/services/leave-embargoes.service.js +0 -47
- package/dist/mjs/services/leave-request.service.d.ts +0 -33
- package/dist/mjs/services/leave-request.service.js +0 -51
- package/dist/mjs/services/leave-types.service.d.ts +0 -12
- package/dist/mjs/services/leave-types.service.js +0 -13
- package/dist/mjs/services/leave.service.d.ts +0 -35
- package/dist/mjs/services/leave.service.js +0 -53
- package/dist/mjs/services/locations.service.d.ts +0 -33
- package/dist/mjs/services/locations.service.js +0 -47
- package/dist/mjs/services/pins.service.d.ts +0 -11
- package/dist/mjs/services/pins.service.js +0 -12
- package/dist/mjs/services/roles.service.d.ts +0 -33
- package/dist/mjs/services/roles.service.js +0 -47
- package/dist/mjs/services/service.d.ts +0 -44
- package/dist/mjs/services/service.js +0 -161
- package/dist/mjs/services/settings.service.d.ts +0 -14
- package/dist/mjs/services/settings.service.js +0 -14
- package/dist/mjs/services/shifts.service.d.ts +0 -60
- package/dist/mjs/services/shifts.service.js +0 -63
- package/dist/mjs/services/terminals-active.service.d.ts +0 -35
- package/dist/mjs/services/terminals-active.service.js +0 -43
- package/dist/mjs/services/terminals.service.d.ts +0 -32
- package/dist/mjs/services/terminals.service.js +0 -48
- package/dist/mjs/services/toil-accruals.service.d.ts +0 -28
- package/dist/mjs/services/toil-accruals.service.js +0 -38
- package/dist/mjs/services/toil-allowance.service.d.ts +0 -10
- package/dist/mjs/services/toil-allowance.service.js +0 -23
- package/dist/mjs/services/users-clock-in.service.d.ts +0 -62
- package/dist/mjs/services/users-clock-in.service.js +0 -57
- package/dist/mjs/services/users.service.d.ts +0 -33
- package/dist/mjs/services/users.service.js +0 -48
- package/dist/mjs/version.d.ts +0 -3
- package/dist/mjs/version.js +0 -1
package/.eslintrc.json
CHANGED
|
@@ -3,14 +3,14 @@
|
|
|
3
3
|
"es2021": true,
|
|
4
4
|
"node": true
|
|
5
5
|
},
|
|
6
|
-
"extends": ["airbnb-base", "airbnb-typescript/base", "
|
|
6
|
+
"extends": ["airbnb-base", "airbnb-typescript/base", "prettier"],
|
|
7
7
|
"parser": "@typescript-eslint/parser",
|
|
8
8
|
"parserOptions": {
|
|
9
9
|
"ecmaVersion": 13,
|
|
10
10
|
"sourceType": "module",
|
|
11
11
|
"project": "./tsconfig.json"
|
|
12
12
|
},
|
|
13
|
-
"plugins": ["@typescript-eslint"
|
|
13
|
+
"plugins": ["@typescript-eslint"],
|
|
14
14
|
"rules": {
|
|
15
15
|
"@typescript-eslint/no-useless-constructor": ["off"],
|
|
16
16
|
"@typescript-eslint/no-unused-vars": ["warn"],
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
name: Check
|
|
2
|
+
on:
|
|
3
|
+
workflow_call:
|
|
4
|
+
inputs:
|
|
5
|
+
NODE_VERSION:
|
|
6
|
+
type: string
|
|
7
|
+
description: 'The version of Node to run the checks with'
|
|
8
|
+
default: 16.10
|
|
9
|
+
pull_request:
|
|
10
|
+
branches: [develop]
|
|
11
|
+
|
|
12
|
+
jobs:
|
|
13
|
+
checks:
|
|
14
|
+
runs-on: ubuntu-latest
|
|
15
|
+
steps:
|
|
16
|
+
- name: Checkout
|
|
17
|
+
uses: actions/checkout@v3
|
|
18
|
+
|
|
19
|
+
- name: Use Node.js ${{ inputs.NODE_VERSION }}
|
|
20
|
+
uses: actions/setup-node@v3
|
|
21
|
+
with:
|
|
22
|
+
node-version: ${{ inputs.NODE_VERSION }}
|
|
23
|
+
cache: 'npm'
|
|
24
|
+
registry-url: https://registry.npmjs.org/
|
|
25
|
+
|
|
26
|
+
- name: npm install
|
|
27
|
+
run: npm ci
|
|
28
|
+
|
|
29
|
+
- name: Lint
|
|
30
|
+
run: npm run lint
|
|
31
|
+
|
|
32
|
+
- name: Build
|
|
33
|
+
run: npm run build --if-present
|
|
34
|
+
|
|
35
|
+
- name: Publishable
|
|
36
|
+
run: npm publish --dry-run
|
|
@@ -2,40 +2,39 @@
|
|
|
2
2
|
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
|
|
3
3
|
|
|
4
4
|
name: Publish
|
|
5
|
-
|
|
6
5
|
on:
|
|
7
6
|
push:
|
|
8
7
|
branches: [main]
|
|
9
8
|
|
|
10
9
|
jobs:
|
|
10
|
+
check:
|
|
11
|
+
uses: ./.github/workflows/check.yml
|
|
12
|
+
|
|
11
13
|
publish:
|
|
12
14
|
runs-on: ubuntu-latest
|
|
13
|
-
|
|
15
|
+
needs: [check]
|
|
14
16
|
strategy:
|
|
15
17
|
matrix:
|
|
16
|
-
node-version: [
|
|
18
|
+
node-version: [16.10]
|
|
17
19
|
# See supported Node.js release schedule at https://nodejs.org/en/about/releases/
|
|
18
20
|
|
|
19
21
|
steps:
|
|
20
22
|
- name: Checkout
|
|
21
23
|
uses: actions/checkout@v3
|
|
24
|
+
|
|
22
25
|
- name: Use Node.js ${{ matrix.node-version }}
|
|
23
26
|
uses: actions/setup-node@v3
|
|
24
27
|
with:
|
|
25
28
|
node-version: ${{ matrix.node-version }}
|
|
26
29
|
cache: 'npm'
|
|
27
30
|
registry-url: https://registry.npmjs.org/
|
|
31
|
+
|
|
28
32
|
- name: Add version number to package
|
|
29
33
|
run: |
|
|
30
34
|
version=$(node -pe "require('./package.json').version")
|
|
31
35
|
echo "Version is $version"
|
|
32
36
|
echo "export const Version = { version: '$version' };" > ./src/version.ts
|
|
33
|
-
|
|
34
|
-
run: npm ci
|
|
35
|
-
- name: Lint
|
|
36
|
-
run: npm run lint
|
|
37
|
-
- name: Build
|
|
38
|
-
run: npm run build --if-present
|
|
37
|
+
|
|
39
38
|
- name: Publish
|
|
40
39
|
run: npm publish
|
|
41
40
|
env:
|
package/package.json
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rotacloud",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.55",
|
|
4
4
|
"description": "The RotaCloud SDK for the RotaCloud API",
|
|
5
5
|
"engines": {
|
|
6
|
-
"node": ">=
|
|
6
|
+
"node": ">=16.10.0"
|
|
7
7
|
},
|
|
8
8
|
"main": "./dist/cjs/rotacloud.js",
|
|
9
9
|
"module": "./dist/mjs/rotacloud.js",
|
|
@@ -31,22 +31,21 @@
|
|
|
31
31
|
},
|
|
32
32
|
"homepage": "https://github.com/rotacloud/rotacloud-node#readme",
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"@typescript-eslint/eslint-plugin": "^
|
|
35
|
-
"@typescript-eslint/parser": "^
|
|
36
|
-
"concurrently": "^
|
|
37
|
-
"eslint": "^8.
|
|
34
|
+
"@typescript-eslint/eslint-plugin": "^6.2.1",
|
|
35
|
+
"@typescript-eslint/parser": "^6.3.0",
|
|
36
|
+
"concurrently": "^8.2.0",
|
|
37
|
+
"eslint": "^8.46.0",
|
|
38
38
|
"eslint-config-airbnb": "^19.0.0",
|
|
39
39
|
"eslint-config-airbnb-base": "^15.0.0",
|
|
40
|
-
"eslint-config-airbnb-typescript": "^
|
|
41
|
-
"eslint-config-prettier": "^
|
|
42
|
-
"eslint-plugin-import": "^2.
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"typescript": "^4.4.4"
|
|
40
|
+
"eslint-config-airbnb-typescript": "^17.1.0",
|
|
41
|
+
"eslint-config-prettier": "^9.0.0",
|
|
42
|
+
"eslint-plugin-import": "^2.28.0",
|
|
43
|
+
"prettier": "~3.0.1",
|
|
44
|
+
"typescript": "^5.1.6"
|
|
46
45
|
},
|
|
47
46
|
"dependencies": {
|
|
48
|
-
"@types/node": "^16.11.
|
|
49
|
-
"axios": "^
|
|
50
|
-
"axios-retry": "^3.
|
|
47
|
+
"@types/node": "^16.11.7",
|
|
48
|
+
"axios": "^1.4.0",
|
|
49
|
+
"axios-retry": "^3.6.0"
|
|
51
50
|
}
|
|
52
51
|
}
|
|
@@ -26,9 +26,7 @@ export class AttendanceService extends Service {
|
|
|
26
26
|
get(id: number, options: { rawResponse: true } & Options): Promise<AxiosResponse<ApiAttendance, any>>;
|
|
27
27
|
get(id: number, options: Options): Promise<Attendance>;
|
|
28
28
|
get(id: number, options?: Options) {
|
|
29
|
-
return super.fetch<ApiAttendance>({ url: `${this.apiPath}/${id}` }, options).then((res) =>
|
|
30
|
-
return Promise.resolve(options?.rawResponse ? res : new Attendance(res.data));
|
|
31
|
-
});
|
|
29
|
+
return super.fetch<ApiAttendance>({ url: `${this.apiPath}/${id}` }, options).then((res) => Promise.resolve(options?.rawResponse ? res : new Attendance(res.data)));
|
|
32
30
|
}
|
|
33
31
|
|
|
34
32
|
async *list(query: AttendanceQueryParams, options?: Options) {
|
|
@@ -40,13 +40,11 @@ export class AvailabilityService extends Service {
|
|
|
40
40
|
return this.update(
|
|
41
41
|
{
|
|
42
42
|
user,
|
|
43
|
-
dates: dates.map((date) => {
|
|
44
|
-
return {
|
|
43
|
+
dates: dates.map((date) => ({
|
|
45
44
|
date,
|
|
46
45
|
available: [],
|
|
47
46
|
unavailable: [],
|
|
48
|
-
}
|
|
49
|
-
}),
|
|
47
|
+
})),
|
|
50
48
|
},
|
|
51
49
|
options
|
|
52
50
|
);
|
package/src/services/service.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import axios, { AxiosError, AxiosInstance, AxiosRequestConfig,
|
|
1
|
+
import axios, { AxiosError, AxiosInstance, AxiosRequestConfig, AxiosResponse } from 'axios';
|
|
2
2
|
import axiosRetry from 'axios-retry';
|
|
3
3
|
import { RotaCloud } from '../rotacloud.js';
|
|
4
4
|
import { Version } from '../version.js';
|
|
@@ -27,6 +27,15 @@ export type RetryOptions =
|
|
|
27
27
|
maxRetries: number;
|
|
28
28
|
};
|
|
29
29
|
|
|
30
|
+
export interface Options {
|
|
31
|
+
rawResponse?: boolean;
|
|
32
|
+
expand?: string[];
|
|
33
|
+
fields?: string[];
|
|
34
|
+
limit?: number;
|
|
35
|
+
offset?: number;
|
|
36
|
+
dryRun?: boolean;
|
|
37
|
+
}
|
|
38
|
+
|
|
30
39
|
const DEFAULT_RETRIES = 3;
|
|
31
40
|
const DEFAULT_RETRY_DELAY = 2000;
|
|
32
41
|
|
|
@@ -42,22 +51,6 @@ const DEFAULT_RETRY_STRATEGY_OPTIONS: Record<RetryStrategy, RetryOptions> = {
|
|
|
42
51
|
},
|
|
43
52
|
};
|
|
44
53
|
|
|
45
|
-
export interface Options {
|
|
46
|
-
rawResponse?: boolean;
|
|
47
|
-
expand?: string[];
|
|
48
|
-
fields?: string[];
|
|
49
|
-
limit?: number;
|
|
50
|
-
offset?: number;
|
|
51
|
-
dryRun?: boolean;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
interface PagingObject {
|
|
55
|
-
first: string;
|
|
56
|
-
prev: string;
|
|
57
|
-
next: string;
|
|
58
|
-
last: string;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
54
|
type ParameterPrimitive = string | boolean | number | null;
|
|
62
55
|
type ParameterValue = ParameterPrimitive | ParameterPrimitive[] | undefined;
|
|
63
56
|
|
|
@@ -90,13 +83,22 @@ export abstract class Service<ApiResponse = any> {
|
|
|
90
83
|
return new SDKError(sdkErrorParams);
|
|
91
84
|
}
|
|
92
85
|
|
|
93
|
-
|
|
86
|
+
private isLeaveRequest(endpoint?: string): boolean {
|
|
94
87
|
return endpoint === '/leave_requests';
|
|
95
88
|
}
|
|
96
89
|
|
|
97
|
-
private
|
|
98
|
-
|
|
99
|
-
|
|
90
|
+
private buildQueryParams(options?: Options, extraParams?: Record<string, ParameterValue>) {
|
|
91
|
+
const queryParams: Record<string, ParameterValue> = {
|
|
92
|
+
expand: options?.expand,
|
|
93
|
+
fields: options?.fields,
|
|
94
|
+
limit: options?.limit,
|
|
95
|
+
offset: options?.offset,
|
|
96
|
+
dry_run: options?.dryRun,
|
|
97
|
+
...extraParams,
|
|
98
|
+
// NOTE: Should not overridable so must come after spread of params
|
|
99
|
+
exclude_link_header: true,
|
|
100
|
+
};
|
|
101
|
+
const reducedParams = Object.entries(queryParams ?? {}).reduce((params, [key, val]) => {
|
|
100
102
|
if (val !== undefined && val !== '') {
|
|
101
103
|
if (Array.isArray(val)) params.push(...val.map((item) => [`${key}[]`, String(item)]));
|
|
102
104
|
else params.push([key, String(val)]);
|
|
@@ -104,21 +106,11 @@ export abstract class Service<ApiResponse = any> {
|
|
|
104
106
|
return params;
|
|
105
107
|
}, [] as string[][]);
|
|
106
108
|
|
|
107
|
-
return new URLSearchParams(reducedParams)
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
private parsePageLinkHeader(linkHeader: string): Partial<PagingObject> {
|
|
111
|
-
const pageData = {};
|
|
112
|
-
for (const link of linkHeader.split(',')) {
|
|
113
|
-
const { rel, url } = link.match(/<(?<url>.*)>; rel="(?<rel>\w*)"/)?.groups ?? {};
|
|
114
|
-
pageData[rel] = url;
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
return pageData;
|
|
109
|
+
return new URLSearchParams(reducedParams);
|
|
118
110
|
}
|
|
119
111
|
|
|
120
|
-
|
|
121
|
-
const headers:
|
|
112
|
+
fetch<T = ApiResponse>(reqConfig: AxiosRequestConfig, options?: Options): Promise<AxiosResponse<T>> {
|
|
113
|
+
const headers: Record<string, string> = {
|
|
122
114
|
Authorization: `Bearer ${RotaCloud.config.apiKey}`,
|
|
123
115
|
'SDK-Version': Version.version,
|
|
124
116
|
};
|
|
@@ -136,22 +128,14 @@ export abstract class Service<ApiResponse = any> {
|
|
|
136
128
|
headers.Account = String(RotaCloud.config.accountId);
|
|
137
129
|
} else {
|
|
138
130
|
// need to convert user field in payload to a header for creating leave_requests when using an API key
|
|
139
|
-
this.isLeaveRequest(
|
|
131
|
+
this.isLeaveRequest(reqConfig.url) ? (headers.User = `${reqConfig.data.user}`) : undefined;
|
|
140
132
|
}
|
|
141
133
|
|
|
142
|
-
const
|
|
143
|
-
...
|
|
134
|
+
const finalReqConfig: AxiosRequestConfig<T> = {
|
|
135
|
+
...reqConfig,
|
|
144
136
|
baseURL: RotaCloud.config.baseUri,
|
|
145
137
|
headers,
|
|
146
|
-
params:
|
|
147
|
-
expand: options?.expand,
|
|
148
|
-
fields: options?.fields,
|
|
149
|
-
limit: options?.limit,
|
|
150
|
-
offset: options?.offset,
|
|
151
|
-
dry_run: options?.dryRun,
|
|
152
|
-
...httpOptions?.params,
|
|
153
|
-
},
|
|
154
|
-
paramsSerializer: this.buildQueryStr,
|
|
138
|
+
params: this.buildQueryParams(options, reqConfig.params),
|
|
155
139
|
};
|
|
156
140
|
|
|
157
141
|
if (RotaCloud.config.retry) {
|
|
@@ -171,52 +155,37 @@ export abstract class Service<ApiResponse = any> {
|
|
|
171
155
|
});
|
|
172
156
|
}
|
|
173
157
|
|
|
174
|
-
return this.client.request<T>(
|
|
158
|
+
return this.client.request<T>(finalReqConfig);
|
|
175
159
|
}
|
|
176
160
|
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
yield
|
|
192
|
-
|
|
193
|
-
// Failsafe incase the page does not change
|
|
194
|
-
if (currentPageUrl === pageRequestObject.url) {
|
|
195
|
-
throw new Error('Next page link did not change');
|
|
196
|
-
}
|
|
197
|
-
currentPageUrl = pageRequestObject.url;
|
|
161
|
+
/** Iterates through every page for a potentially paginated request */
|
|
162
|
+
private async *fetchPages<T>(
|
|
163
|
+
reqConfig: AxiosRequestConfig<T[]>,
|
|
164
|
+
options: Options | undefined
|
|
165
|
+
): AsyncGenerator<AxiosResponse<T[]>> {
|
|
166
|
+
const fallbackLimit = 20;
|
|
167
|
+
const res = await this.fetch<T[]>(reqConfig, options);
|
|
168
|
+
yield res;
|
|
169
|
+
|
|
170
|
+
const limit = Number(res.headers['x-limit']) || fallbackLimit;
|
|
171
|
+
const entityCount = Number(res.headers['x-total-count']) || 0;
|
|
172
|
+
const requestOffset = Number(res.headers['x-offset']) || 0;
|
|
173
|
+
|
|
174
|
+
for (let offset = requestOffset + limit; offset < entityCount; offset += limit) {
|
|
175
|
+
yield this.fetch<T[]>(reqConfig, { ...options, offset });
|
|
198
176
|
}
|
|
199
177
|
}
|
|
200
178
|
|
|
201
|
-
private async *listResponses<T = ApiResponse>(
|
|
202
|
-
for await (const res of this.
|
|
179
|
+
private async *listResponses<T = ApiResponse>(reqConfig: AxiosRequestConfig<T[]>, options?: Options) {
|
|
180
|
+
for await (const res of this.fetchPages<T>(reqConfig, options)) {
|
|
203
181
|
yield* res.data;
|
|
204
182
|
}
|
|
205
183
|
}
|
|
206
184
|
|
|
207
|
-
|
|
208
|
-
const iterator = this.listResponses<T>(reqObject, options);
|
|
185
|
+
iterator<T = ApiResponse>(reqConfig: AxiosRequestConfig<T[]>, options?: Options) {
|
|
209
186
|
return {
|
|
210
|
-
[Symbol.asyncIterator]()
|
|
211
|
-
|
|
212
|
-
next() {
|
|
213
|
-
return iterator.next();
|
|
214
|
-
},
|
|
215
|
-
};
|
|
216
|
-
},
|
|
217
|
-
byPage: () => {
|
|
218
|
-
return this.listFetch<T>(reqObject, options);
|
|
219
|
-
},
|
|
187
|
+
[Symbol.asyncIterator]: () => this.listResponses<T>(reqConfig, options),
|
|
188
|
+
byPage: () => this.fetchPages<T>(reqConfig, options),
|
|
220
189
|
};
|
|
221
190
|
}
|
|
222
191
|
}
|
|
@@ -51,31 +51,62 @@ export class ShiftsService extends Service {
|
|
|
51
51
|
return super.iterator<ApiShift>({ url: this.apiPath, params: query }, options).byPage();
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
update(
|
|
54
|
+
update(shift: RequirementsOf<ApiShift, 'id'>): Promise<Shift>;
|
|
55
55
|
update(
|
|
56
|
-
|
|
57
|
-
data: Partial<ApiShift>,
|
|
56
|
+
shift: RequirementsOf<ApiShift, 'id'>,
|
|
58
57
|
options: { rawResponse: true } & Options
|
|
59
|
-
): Promise<AxiosResponse<ApiShift
|
|
60
|
-
update(
|
|
61
|
-
update(
|
|
58
|
+
): Promise<AxiosResponse<ApiShift>>;
|
|
59
|
+
update(shift: RequirementsOf<ApiShift, 'id'>, options: Options): Promise<Shift>;
|
|
60
|
+
update(
|
|
61
|
+
shifts: RequirementsOf<ApiShift, 'id'>[]
|
|
62
|
+
): Promise<{ success: Shift[]; failed: { id: number; error: string }[] }>;
|
|
63
|
+
update(shift: RequirementsOf<ApiShift, 'id'>, options: Options): Promise<Shift>;
|
|
64
|
+
update(
|
|
65
|
+
shifts: RequirementsOf<ApiShift, 'id'>[],
|
|
66
|
+
options: { rawResponse: true } & Options
|
|
67
|
+
): Promise<AxiosResponse<{ code: number; data?: ApiShift; error?: string }[]>>;
|
|
68
|
+
update(
|
|
69
|
+
shifts: RequirementsOf<ApiShift, 'id'>[],
|
|
70
|
+
options: Options
|
|
71
|
+
): Promise<{ success: Shift[]; failed: { id: number; error: string }[] }>;
|
|
72
|
+
update(shifts: RequirementsOf<ApiShift, 'id'> | RequirementsOf<ApiShift, 'id'>[], options?: Options) {
|
|
73
|
+
if (!Array.isArray(shifts)) {
|
|
74
|
+
return super
|
|
75
|
+
.fetch<ApiShift>({
|
|
76
|
+
url: `${this.apiPath}/${shifts.id}`,
|
|
77
|
+
data: shifts,
|
|
78
|
+
method: 'POST',
|
|
79
|
+
})
|
|
80
|
+
.then((res) => (options?.rawResponse ? res : new Shift(res.data)));
|
|
81
|
+
}
|
|
82
|
+
|
|
62
83
|
return super
|
|
63
|
-
.fetch<ApiShift>({
|
|
64
|
-
url:
|
|
65
|
-
data,
|
|
84
|
+
.fetch<{ code: number; data?: ApiShift; error?: string }[]>({
|
|
85
|
+
url: this.apiPath,
|
|
86
|
+
data: shifts,
|
|
66
87
|
method: 'POST',
|
|
67
88
|
})
|
|
68
|
-
.then((res) =>
|
|
89
|
+
.then((res) => {
|
|
90
|
+
if (options?.rawResponse) return res;
|
|
91
|
+
|
|
92
|
+
const success: Shift[] = [];
|
|
93
|
+
const failed: { id: number; error: string }[] = [];
|
|
94
|
+
for (let shiftIdx = 0; shiftIdx < res.data.length; shiftIdx += 1) {
|
|
95
|
+
const { data, error } = res.data[shiftIdx];
|
|
96
|
+
if (data) success.push(new Shift(data));
|
|
97
|
+
if (error) failed.push({ id: shifts[shiftIdx].id, error });
|
|
98
|
+
}
|
|
99
|
+
return { success, failed };
|
|
100
|
+
});
|
|
69
101
|
}
|
|
70
102
|
|
|
71
103
|
delete(ids: number | number[]): Promise<number>;
|
|
72
104
|
delete(ids: number | number[], options: { rawResponse: true } & Options): Promise<AxiosResponse<any, any>>;
|
|
73
105
|
delete(ids: number | number[], options: Options): Promise<number>;
|
|
74
106
|
delete(ids: number | number[], options?: Options) {
|
|
75
|
-
const params: AxiosRequestConfig =
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
: { url: `${this.apiPath}/${ids}`, method: 'DELETE' };
|
|
107
|
+
const params: AxiosRequestConfig = Array.isArray(ids)
|
|
108
|
+
? { url: this.apiPath, data: { ids }, method: 'DELETE' }
|
|
109
|
+
: { url: `${this.apiPath}/${ids}`, method: 'DELETE' };
|
|
79
110
|
|
|
80
111
|
return super.fetch<ApiShift>(params).then((res) => Promise.resolve(options?.rawResponse ? res : res.status));
|
|
81
112
|
}
|
package/src/version.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const Version = { version: '1.0.
|
|
1
|
+
export const Version = { version: '1.0.55' };
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { ApiAccountServices } from './index.js';
|
|
2
|
-
export interface ApiAccount {
|
|
3
|
-
id: number;
|
|
4
|
-
name: string;
|
|
5
|
-
level: string;
|
|
6
|
-
created: number;
|
|
7
|
-
expired: boolean;
|
|
8
|
-
owner: number;
|
|
9
|
-
timezone: number;
|
|
10
|
-
industry: number;
|
|
11
|
-
phone: string;
|
|
12
|
-
address_1: string;
|
|
13
|
-
address_2: string;
|
|
14
|
-
city: string;
|
|
15
|
-
county: string;
|
|
16
|
-
postcode: string;
|
|
17
|
-
country: number;
|
|
18
|
-
services: ApiAccountServices[];
|
|
19
|
-
total_price: number;
|
|
20
|
-
pricing: object;
|
|
21
|
-
expires_in: number;
|
|
22
|
-
features_disabled: string[];
|
|
23
|
-
first_billed: string;
|
|
24
|
-
owed: number;
|
|
25
|
-
trial: boolean;
|
|
26
|
-
can_restart_trial: boolean;
|
|
27
|
-
next_billed: string;
|
|
28
|
-
hide_billing: boolean;
|
|
29
|
-
total_employees: number;
|
|
30
|
-
payment_card: string;
|
|
31
|
-
billing_type: string;
|
|
32
|
-
billing_term: string;
|
|
33
|
-
billing_email: string;
|
|
34
|
-
billing_address: string;
|
|
35
|
-
grouped_billing_parent: number;
|
|
36
|
-
grouped_billing_children: number[];
|
|
37
|
-
vat_number: string;
|
|
38
|
-
suspended: boolean;
|
|
39
|
-
suspended_message: string;
|
|
40
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { ApiShift } from './index.js';
|
|
2
|
-
export interface ApiAttendanceLocation {
|
|
3
|
-
lat: number;
|
|
4
|
-
lng: number;
|
|
5
|
-
accuracy: number;
|
|
6
|
-
}
|
|
7
|
-
export interface ApiAttendance {
|
|
8
|
-
id: number;
|
|
9
|
-
deleted: boolean;
|
|
10
|
-
approved: boolean;
|
|
11
|
-
in_time: number;
|
|
12
|
-
out_time: number;
|
|
13
|
-
minutes_break: number;
|
|
14
|
-
user: number;
|
|
15
|
-
location: number;
|
|
16
|
-
role: number;
|
|
17
|
-
minutes_late: number;
|
|
18
|
-
hours: number;
|
|
19
|
-
hours_auto: number;
|
|
20
|
-
hours_is_auto: boolean;
|
|
21
|
-
notes: string | null;
|
|
22
|
-
shift: ApiShift | null;
|
|
23
|
-
in_method: string;
|
|
24
|
-
out_method: string;
|
|
25
|
-
in_location: ApiAttendanceLocation;
|
|
26
|
-
out_location: ApiAttendanceLocation;
|
|
27
|
-
in_device: number;
|
|
28
|
-
out_device: number;
|
|
29
|
-
in_terminal: null;
|
|
30
|
-
out_terminal: null;
|
|
31
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { ApiAvailabilityPeriod } from './index.js';
|
|
2
|
-
export interface ApiAvailabilityPatternAvailability {
|
|
3
|
-
available: ApiAvailabilityPeriod[];
|
|
4
|
-
unavailable: ApiAvailabilityPeriod[];
|
|
5
|
-
}
|
|
6
|
-
export interface ApiAvailabilityPattern {
|
|
7
|
-
id: number;
|
|
8
|
-
user: number;
|
|
9
|
-
name: string;
|
|
10
|
-
start_date: string;
|
|
11
|
-
end_date: string;
|
|
12
|
-
repeat_weeks: number;
|
|
13
|
-
mon: ApiAvailabilityPatternAvailability;
|
|
14
|
-
tue: ApiAvailabilityPatternAvailability;
|
|
15
|
-
wed: ApiAvailabilityPatternAvailability;
|
|
16
|
-
thu: ApiAvailabilityPatternAvailability;
|
|
17
|
-
fri: ApiAvailabilityPatternAvailability;
|
|
18
|
-
sat: ApiAvailabilityPatternAvailability;
|
|
19
|
-
sun: ApiAvailabilityPatternAvailability;
|
|
20
|
-
}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export interface ApiAvailabilityPeriod {
|
|
2
|
-
start_time: string;
|
|
3
|
-
end_time: string;
|
|
4
|
-
}
|
|
5
|
-
export interface ApiAvailabilityDate {
|
|
6
|
-
date: string;
|
|
7
|
-
available: ApiAvailabilityPeriod[];
|
|
8
|
-
unavailable: ApiAvailabilityPeriod[];
|
|
9
|
-
}
|
|
10
|
-
export interface ApiAvailability {
|
|
11
|
-
user: number;
|
|
12
|
-
dates: ApiAvailabilityDate[];
|
|
13
|
-
}
|