@bringg/dashboard-sdk 9.49.0 → 9.50.0-pre.1
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/Application/Entity/ApplicationEntity.js +3 -3
- package/dist/Application/Entity/ApplicationEntity.js.map +1 -1
- package/dist/AsyncOperationStatus/AsyncOperationStatus.js +1 -0
- package/dist/AsyncOperationStatus/AsyncOperationStatus.js.map +1 -1
- package/dist/BringgDashboardSDK.js +0 -2
- package/dist/BringgDashboardSDK.js.map +1 -1
- package/dist/Chat/Chat.js.map +1 -1
- package/dist/Chat/Service/Chat.service.js.map +1 -1
- package/dist/ChatConversation/ChatConversation.consts.d.ts +4 -4
- package/dist/ChatConversation/Entity/ChatConversation.d.ts +5 -4
- package/dist/ChatConversation/Entity/ChatConversation.js +3 -3
- package/dist/ChatConversation/Entity/ChatConversation.js.map +1 -1
- package/dist/Core/BringgException.js +3 -3
- package/dist/Core/BringgException.js.map +1 -1
- package/dist/Core/Polly.js +4 -2
- package/dist/Core/Polly.js.map +1 -1
- package/dist/Core/RouteGenerator.d.ts +1 -1
- package/dist/Core/RouteGenerator.js +1 -4
- package/dist/Core/RouteGenerator.js.map +1 -1
- package/dist/Customer/v2/customers-api.js +2 -2
- package/dist/Customer/v2/customers-api.js.map +1 -1
- package/dist/Data/merge-mapper.js +1 -0
- package/dist/Data/merge-mapper.js.map +1 -1
- package/dist/DeliveryWindows/v2/delivery-windows-service.js +1 -1
- package/dist/MerchantConfiguration/Entity/MerchantConfigurationEntity.js +0 -1
- package/dist/MerchantConfiguration/Entity/MerchantConfigurationEntity.js.map +1 -1
- package/dist/MerchantConfiguration/MerchantConfigurationApi.js +0 -1
- package/dist/MerchantConfiguration/MerchantConfigurationApi.js.map +1 -1
- package/dist/OptimizationKpi/v2/optimization-kpi-service.js +1 -1
- package/dist/PlannedDeliveryWindows/planned-delivery-windows-service.js +2 -2
- package/dist/ReportPreference/Entity/ReportPreferenceEntity.js +1 -1
- package/dist/ServiceArea/v2/service-area-service.js +2 -1
- package/dist/ServiceArea/v2/service-area-service.js.map +1 -1
- package/dist/ServicePlans/Entity/ServicePlansEntity.js +0 -1
- package/dist/ServicePlans/Entity/ServicePlansEntity.js.map +1 -1
- package/dist/ServicePlans/ServicePlansApi.js.map +1 -1
- package/dist/Services/Route.js +0 -1
- package/dist/Services/Route.js.map +1 -1
- package/dist/Services/ServiceRequest.js +6 -25
- package/dist/Services/ServiceRequest.js.map +1 -1
- package/dist/Task/Entity/TaskEntity.js +0 -2
- package/dist/Task/Entity/TaskEntity.js.map +1 -1
- package/dist/Task/TaskApi.js +0 -2
- package/dist/Task/TaskApi.js.map +1 -1
- package/dist/Task/Tasks.consts.js +1 -1
- package/dist/Task/v2/task-realtime-subscriptions.js +1 -1
- package/dist/Task/v2/task-realtime-subscriptions.js.map +1 -1
- package/dist/Task/v2/tasks-api.js +1 -4
- package/dist/Task/v2/tasks-api.js.map +1 -1
- package/dist/Task/v2/tasks-service.js +2 -6
- package/dist/Task/v2/tasks-service.js.map +1 -1
- package/dist/TaskConfiguration/Entity/TaskConfigurationEntity.js +1 -1
- package/dist/TaskInventory/Service/TaskInventory.service.js +2 -2
- package/dist/TaskManagedAttributes/task-managed-attributes-realtime-subscriptions.js +2 -0
- package/dist/TaskManagedAttributes/task-managed-attributes-realtime-subscriptions.js.map +1 -1
- package/dist/TaskManagedAttributes/task-managed-attributes-service.js +2 -2
- package/dist/TasksExplorer/Services/tasks-explorer-service.js +2 -2
- package/dist/User/Service/UsersService.d.ts +4 -4
- package/dist/User/Service/UsersService.js +3 -3
- package/dist/User/Store/UsersStore.d.ts +3 -3
- package/dist/User/User.consts.d.ts +9 -4
- package/dist/User/User.consts.js +9 -4
- package/dist/User/User.consts.js.map +1 -1
- package/dist/User/Users.d.ts +3 -3
- package/dist/User/v2/users-api.d.ts +26 -5
- package/dist/User/v2/users-api.js +192 -30
- package/dist/User/v2/users-api.js.map +1 -1
- package/dist/User/v2/users-service.d.ts +16 -2
- package/dist/User/v2/users-service.js +128 -2
- package/dist/User/v2/users-service.js.map +1 -1
- package/dist/UserConfiguration/Entity/UserConfigurationEntity.js +2 -2
- package/dist/UserPresetViews/user-preset-views-service.js +2 -2
- package/dist/Vehicle/Entity/VehicleEntity.js +1 -1
- package/dist/Vehicle/v2/vehicles-service.js +3 -3
- package/dist/Workflow/v2/workflows-service.js +1 -1
- package/dist/bringg-dashboard-sdk-cjs2.js +389 -132
- package/dist/bringg-dashboard-sdk-cjs2.js.map +1 -1
- package/dist/bringg-dashboard-sdk.js +41 -41
- package/dist/bringg-dashboard-sdk.min.js +1 -1
- package/dist/bringg-dashboard-sdk.min.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +1 -3
- package/dist/index.js.map +1 -1
- package/dist/utils/decorators/cached-promise.d.ts +1 -1
- package/dist/utils/decorators/cached-promise.js +2 -4
- package/dist/utils/decorators/cached-promise.js.map +1 -1
- package/package.json +6 -9
|
@@ -56,7 +56,7 @@ var TasksExplorerService = /** @class */ (function () {
|
|
|
56
56
|
return [2 /*return*/, this.service.routeGenerator
|
|
57
57
|
.post(Routes.GET_ALL)
|
|
58
58
|
.withPayload(req)
|
|
59
|
-
.setException(
|
|
59
|
+
.setException('failed to fetch tasks')
|
|
60
60
|
.withCommonOptions(commonOptions)
|
|
61
61
|
.invoke()];
|
|
62
62
|
});
|
|
@@ -68,7 +68,7 @@ var TasksExplorerService = /** @class */ (function () {
|
|
|
68
68
|
return [2 /*return*/, this.service.routeGenerator
|
|
69
69
|
.post(Routes.GET_AGGREGATIONS)
|
|
70
70
|
.withPayload(req)
|
|
71
|
-
.setException(
|
|
71
|
+
.setException('failed to fetch aggregations')
|
|
72
72
|
.withCommonOptions(commonOptions)
|
|
73
73
|
.invoke()];
|
|
74
74
|
});
|
|
@@ -4,7 +4,7 @@ import Session from '../../Services/Identity/Session';
|
|
|
4
4
|
import { PubSubService } from '../../Services/PubSubService';
|
|
5
5
|
import { KeysetPaginationRequest } from '../../utils/consts/keyset-pagination.consts';
|
|
6
6
|
import UsersStore from '../Store/UsersStore';
|
|
7
|
-
import {
|
|
7
|
+
import { AllDriversResponse, AllUsersKeysetPaginationResponse, AllUsersResponse } from '../User.consts';
|
|
8
8
|
import { GetAllDriversOptions } from '../Users';
|
|
9
9
|
export default class UsersService extends PubSubService {
|
|
10
10
|
store: UsersStore;
|
|
@@ -16,8 +16,8 @@ export default class UsersService extends PubSubService {
|
|
|
16
16
|
usersIds: number[];
|
|
17
17
|
page?: number;
|
|
18
18
|
limit?: number;
|
|
19
|
-
}, commonOptions?: CommonOptions): Promise<
|
|
20
|
-
getAll(page?: number, limit?: number): Promise<
|
|
19
|
+
}, commonOptions?: CommonOptions): Promise<AllUsersResponse>;
|
|
20
|
+
getAll(page?: number, limit?: number): Promise<AllUsersResponse>;
|
|
21
21
|
getAllKeysetPagination(request: KeysetPaginationRequest<null>): Promise<AllUsersKeysetPaginationResponse>;
|
|
22
22
|
invite(userId: number): Promise<User>;
|
|
23
23
|
unlock(userId: number): Promise<boolean>;
|
|
@@ -29,7 +29,7 @@ export default class UsersService extends PubSubService {
|
|
|
29
29
|
closedTasks(userId: number, page?: number): Promise<Task[]>;
|
|
30
30
|
update(id: number, userDelta: Partial<User>): Promise<User>;
|
|
31
31
|
getAllAdminsAndDispatchers(request: KeysetPaginationRequest<null>): Promise<AllUsersKeysetPaginationResponse>;
|
|
32
|
-
getAllDrivers(request: KeysetPaginationRequest<GetAllDriversOptions>): Promise<
|
|
32
|
+
getAllDrivers(request: KeysetPaginationRequest<GetAllDriversOptions>): Promise<AllDriversResponse>;
|
|
33
33
|
delete(id: number): Promise<boolean>;
|
|
34
34
|
getProfileImage(userId: number): Promise<string>;
|
|
35
35
|
messageDriver(userId: number, message: string): Promise<number>;
|
|
@@ -254,7 +254,7 @@ var UsersService = /** @class */ (function (_super) {
|
|
|
254
254
|
case 0: return [4 /*yield*/, this.handleAuthorizedRequest({
|
|
255
255
|
route: ROUTES.TOTAL_EMPLOYEES,
|
|
256
256
|
extractor: User_consts_1.countExtractor,
|
|
257
|
-
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return
|
|
257
|
+
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return 'Could not get total employee count'; })
|
|
258
258
|
})];
|
|
259
259
|
case 1: return [2 /*return*/, _a.sent()];
|
|
260
260
|
}
|
|
@@ -268,7 +268,7 @@ var UsersService = /** @class */ (function (_super) {
|
|
|
268
268
|
case 0: return [4 /*yield*/, this.handleAuthorizedRequest({
|
|
269
269
|
route: ROUTES.TOTAL_DRIVERS,
|
|
270
270
|
extractor: User_consts_1.countExtractor,
|
|
271
|
-
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return
|
|
271
|
+
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return 'Could not get total drivers count'; })
|
|
272
272
|
})];
|
|
273
273
|
case 1: return [2 /*return*/, _a.sent()];
|
|
274
274
|
}
|
|
@@ -537,7 +537,7 @@ var UsersService = /** @class */ (function (_super) {
|
|
|
537
537
|
route: ROUTES.GENERATE_RESET_PASSWORD_TOKEN,
|
|
538
538
|
extractor: function (response) { return response.reset_password_token; },
|
|
539
539
|
payload: { email: email },
|
|
540
|
-
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return
|
|
540
|
+
exceptionProducer: BringgException_1.BringgException.serviceException(function () { return 'Could not generate token'; })
|
|
541
541
|
})];
|
|
542
542
|
case 1: return [2 /*return*/, _a.sent()];
|
|
543
543
|
}
|
|
@@ -4,7 +4,7 @@ import { CommonOptions } from '../../Core/RouteGenerator';
|
|
|
4
4
|
import Session from '../../Services/Identity/Session';
|
|
5
5
|
import { KeysetPaginationRequest } from '../../utils/consts/keyset-pagination.consts';
|
|
6
6
|
import UsersService from '../Service/UsersService';
|
|
7
|
-
import {
|
|
7
|
+
import { AllDriversResponse, AllUsersKeysetPaginationResponse, AllUsersResponse, GROUP_VALUES } from '../User.consts';
|
|
8
8
|
import { GetAllDriversOptions } from '../Users';
|
|
9
9
|
export type UserGroupValue = Map<GROUP_VALUES, Set<User>>;
|
|
10
10
|
export default class UsersStore extends BaseStore<User> {
|
|
@@ -23,12 +23,12 @@ export default class UsersStore extends BaseStore<User> {
|
|
|
23
23
|
private initGroups;
|
|
24
24
|
create(user: Partial<User>): Promise<User>;
|
|
25
25
|
getDriversByTeam(teamId: number): Promise<Driver[]>;
|
|
26
|
-
getAll(page?: number, limit?: number): Promise<
|
|
26
|
+
getAll(page?: number, limit?: number): Promise<AllUsersResponse>;
|
|
27
27
|
getAllKeysetPagination(request: KeysetPaginationRequest<null>): Promise<AllUsersKeysetPaginationResponse>;
|
|
28
28
|
invite(userId: number): Promise<User>;
|
|
29
29
|
inviteByEmail(userId: number): Promise<User>;
|
|
30
30
|
getAllAdminsAndDispatchers(request: KeysetPaginationRequest<null>): Promise<AllUsersKeysetPaginationResponse>;
|
|
31
|
-
getAllDrivers(request: KeysetPaginationRequest<GetAllDriversOptions>): Promise<
|
|
31
|
+
getAllDrivers(request: KeysetPaginationRequest<GetAllDriversOptions>): Promise<AllDriversResponse>;
|
|
32
32
|
private getOrFetchUsers;
|
|
33
33
|
byUserType(userTypeId: number): Promise<Driver[]>;
|
|
34
34
|
makeAdmin(userId: number): Promise<Admin>;
|
|
@@ -42,7 +42,7 @@ export type MakeAdminResponceFormat = {
|
|
|
42
42
|
success: boolean;
|
|
43
43
|
user: User;
|
|
44
44
|
};
|
|
45
|
-
export type
|
|
45
|
+
export type AllUsersResponse = {
|
|
46
46
|
has_next_page: boolean;
|
|
47
47
|
users: User[];
|
|
48
48
|
};
|
|
@@ -54,16 +54,19 @@ export declare enum UsersScopes {
|
|
|
54
54
|
MARKED_AS_ONLINE = "marked_as_online"
|
|
55
55
|
}
|
|
56
56
|
export type AllUsersKeysetPaginationResponse = KeysetPaginationResponse<'users', User[]>;
|
|
57
|
-
export type
|
|
57
|
+
export type AllDriversResponse = KeysetPaginationResponse<'users', Driver[]>;
|
|
58
58
|
export declare const defaultExtractor: (response: any) => any;
|
|
59
59
|
export declare const userExtractor: (response: any) => any;
|
|
60
60
|
export declare const usersExtractor: (response: any) => any;
|
|
61
61
|
export declare const countExtractor: (response: any) => any;
|
|
62
62
|
export declare const successExtractor: (response: any) => any;
|
|
63
63
|
export declare const baseRoute = "/users";
|
|
64
|
-
export declare const
|
|
64
|
+
export declare const ROUTES: {
|
|
65
65
|
GET_ALL: string;
|
|
66
66
|
GET_DRIVERS_BY_TEAM: string;
|
|
67
|
+
UNLOCK: string;
|
|
68
|
+
MESSAGE_DRIVER: string;
|
|
69
|
+
VALIDATE_PHONE: string;
|
|
67
70
|
};
|
|
68
71
|
export declare enum UserEvents {
|
|
69
72
|
CURRENT_USER_UPDATED = "currentUserUpdated"
|
|
@@ -83,5 +86,7 @@ export declare enum GROUP_VALUES {
|
|
|
83
86
|
export declare const groupFilter: Map<GROUP_VALUES, (user: User) => boolean>;
|
|
84
87
|
export declare const userToGroupsMapper: (user: User) => any[];
|
|
85
88
|
export declare enum RealtimeEvents {
|
|
86
|
-
Update = "employee update"
|
|
89
|
+
Update = "employee update",
|
|
90
|
+
Create = "new employee",
|
|
91
|
+
Delete = "delete employee"
|
|
87
92
|
}
|
package/dist/User/User.consts.js
CHANGED
|
@@ -11,7 +11,7 @@ var __values = (this && this.__values) || function(o) {
|
|
|
11
11
|
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.RealtimeEvents = exports.userToGroupsMapper = exports.groupFilter = exports.GROUP_VALUES = exports.UserGroupTypes = exports.UserEvents = exports.
|
|
14
|
+
exports.RealtimeEvents = exports.userToGroupsMapper = exports.groupFilter = exports.GROUP_VALUES = exports.UserGroupTypes = exports.UserEvents = exports.ROUTES = exports.baseRoute = exports.successExtractor = exports.countExtractor = exports.usersExtractor = exports.userExtractor = exports.defaultExtractor = exports.UsersScopes = void 0;
|
|
15
15
|
var UserHelpers_1 = require("./UserHelpers");
|
|
16
16
|
var UsersScopes;
|
|
17
17
|
(function (UsersScopes) {
|
|
@@ -31,10 +31,13 @@ var countExtractor = function (response) { return response.count; };
|
|
|
31
31
|
exports.countExtractor = countExtractor;
|
|
32
32
|
var successExtractor = function (response) { return response.success; };
|
|
33
33
|
exports.successExtractor = successExtractor;
|
|
34
|
-
exports.baseRoute =
|
|
35
|
-
exports.
|
|
34
|
+
exports.baseRoute = '/users';
|
|
35
|
+
exports.ROUTES = {
|
|
36
36
|
GET_ALL: exports.baseRoute,
|
|
37
|
-
GET_DRIVERS_BY_TEAM:
|
|
37
|
+
GET_DRIVERS_BY_TEAM: '/teams/{:teamId}/users',
|
|
38
|
+
UNLOCK: "".concat(exports.baseRoute, "/{:userId}/unlock"),
|
|
39
|
+
MESSAGE_DRIVER: '/announcement/user/{:userId}',
|
|
40
|
+
VALIDATE_PHONE: '/api/user/validate_phone'
|
|
38
41
|
};
|
|
39
42
|
var UserEvents;
|
|
40
43
|
(function (UserEvents) {
|
|
@@ -88,5 +91,7 @@ exports.userToGroupsMapper = userToGroupsMapper;
|
|
|
88
91
|
var RealtimeEvents;
|
|
89
92
|
(function (RealtimeEvents) {
|
|
90
93
|
RealtimeEvents["Update"] = "employee update";
|
|
94
|
+
RealtimeEvents["Create"] = "new employee";
|
|
95
|
+
RealtimeEvents["Delete"] = "delete employee";
|
|
91
96
|
})(RealtimeEvents = exports.RealtimeEvents || (exports.RealtimeEvents = {}));
|
|
92
97
|
//# sourceMappingURL=User.consts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.consts.js","sourceRoot":"","sources":["../../src/User/User.consts.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,6CAA4C;AA4D5C,IAAY,WAMX;AAND,WAAY,WAAW;IACtB,kCAAmB,CAAA;IACnB,0CAA2B,CAAA;IAC3B,gCAAiB,CAAA;IACjB,sCAAuB,CAAA;IACvB,oDAAqC,CAAA;AACtC,CAAC,EANW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAMtB;AAKM,IAAM,gBAAgB,GAAG,UAAC,QAAa,IAAK,OAAA,QAAQ,EAAR,CAAQ,CAAC;AAA/C,QAAA,gBAAgB,oBAA+B;AACrD,IAAM,aAAa,GAAG,UAAC,QAAa,IAAK,OAAA,QAAQ,CAAC,IAAI,EAAb,CAAa,CAAC;AAAjD,QAAA,aAAa,iBAAoC;AACvD,IAAM,cAAc,GAAG,UAAC,QAAa,IAAK,OAAA,QAAQ,CAAC,KAAK,EAAd,CAAc,CAAC;AAAnD,QAAA,cAAc,kBAAqC;AACzD,IAAM,cAAc,GAAG,UAAC,QAAa,IAAK,OAAA,QAAQ,CAAC,KAAK,EAAd,CAAc,CAAC;AAAnD,QAAA,cAAc,kBAAqC;AACzD,IAAM,gBAAgB,GAAG,UAAC,QAAa,IAAK,OAAA,QAAQ,CAAC,OAAO,EAAhB,CAAgB,CAAC;AAAvD,QAAA,gBAAgB,oBAAuC;AAEvD,QAAA,SAAS,GAAG,QAAQ,CAAC;AAErB,QAAA,MAAM,GAAG;IACrB,OAAO,EAAE,iBAAS;IAClB,mBAAmB,EAAE,wBAAwB;
|
|
1
|
+
{"version":3,"file":"User.consts.js","sourceRoot":"","sources":["../../src/User/User.consts.ts"],"names":[],"mappings":"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"}
|
package/dist/User/Users.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { CommonOptions } from '../Core/RouteGenerator';
|
|
|
3
3
|
import Session from '../Services/Identity/Session';
|
|
4
4
|
import { KeysetPaginationRequest } from '../utils/consts/keyset-pagination.consts';
|
|
5
5
|
import { UserGroupValue } from './Store/UsersStore';
|
|
6
|
-
import {
|
|
6
|
+
import { AllDriversResponse, AllUsersKeysetPaginationResponse, AllUsersResponse } from './User.consts';
|
|
7
7
|
export interface GetAllDriversOptions {
|
|
8
8
|
onlyOnlineDriver?: boolean;
|
|
9
9
|
onlyCustomers?: boolean;
|
|
@@ -18,7 +18,7 @@ export default class Users {
|
|
|
18
18
|
constructor(session: Session);
|
|
19
19
|
create(user: Partial<Bringg.User>): Promise<Bringg.User>;
|
|
20
20
|
getAllAdminsAndDispatchers({ limit, page_action, cursor }: KeysetPaginationRequest<AllUsersKeysetPaginationResponse>): Promise<AllUsersKeysetPaginationResponse>;
|
|
21
|
-
getAllDrivers({ limit, page_action, cursor, options }: KeysetPaginationRequest<GetAllDriversOptions>): Promise<
|
|
21
|
+
getAllDrivers({ limit, page_action, cursor, options }: KeysetPaginationRequest<GetAllDriversOptions>): Promise<AllDriversResponse>;
|
|
22
22
|
byUserType(userTypeId: number): Promise<Bringg.User[]>;
|
|
23
23
|
makeAdmin(userId: number): Promise<Bringg.Admin>;
|
|
24
24
|
totalEmployeesCount(): Promise<number>;
|
|
@@ -27,7 +27,7 @@ export default class Users {
|
|
|
27
27
|
getDriver(driverId: number): Promise<Bringg.Driver>;
|
|
28
28
|
getDispatcher(dispatcherId: number): Promise<Bringg.Dispatcher>;
|
|
29
29
|
getDriversByTeam(teamId: number): Promise<Bringg.Driver[]>;
|
|
30
|
-
getAll(page?: number, limit?: number): Promise<
|
|
30
|
+
getAll(page?: number, limit?: number): Promise<AllUsersResponse>;
|
|
31
31
|
getAllKeysetPagination({ limit, page_action, cursor }: KeysetPaginationRequest<null>): Promise<AllUsersKeysetPaginationResponse>;
|
|
32
32
|
get(userId: number): Promise<Bringg.User>;
|
|
33
33
|
getMany(usersIds: number[], commonOptions?: CommonOptions): Promise<Bringg.User[]>;
|
|
@@ -1,20 +1,41 @@
|
|
|
1
|
-
import { User } from '@bringg/types';
|
|
1
|
+
import { Driver, User } from '@bringg/types';
|
|
2
2
|
import { DELETE_RESPONSE } from '../../Core/CrudService';
|
|
3
|
+
import { StorableEventUnsubscribe } from '../../Data/storable-types';
|
|
3
4
|
import { DataOptions, MappedStorableItem } from '../../data-entity';
|
|
4
5
|
import Session from '../../Services/Identity/Session';
|
|
5
|
-
import {
|
|
6
|
+
import { KeysetPaginationRequest } from '../../utils/consts/keyset-pagination.consts';
|
|
7
|
+
import { AllDriversResponse, GROUP_VALUES } from '../User.consts';
|
|
8
|
+
import { GetAllDriversOptions } from '../Users';
|
|
6
9
|
export default class UsersApi {
|
|
7
10
|
private readonly userStore;
|
|
8
11
|
private readonly usersService;
|
|
9
12
|
private readonly storableDataService;
|
|
10
13
|
private readonly storableRealtimeSubscriptions;
|
|
11
14
|
constructor(session: Session);
|
|
15
|
+
/**
|
|
16
|
+
* Initialize group filters for user categorization
|
|
17
|
+
* This sets up the realtime subscriptions for proper store management
|
|
18
|
+
* for now keep this, need to check if this is needed
|
|
19
|
+
*/
|
|
12
20
|
delete(userId: number): Promise<DELETE_RESPONSE>;
|
|
21
|
+
create(user: Partial<User>): Promise<User>;
|
|
22
|
+
update(userId: number, userDelta: Partial<User>): Promise<User>;
|
|
23
|
+
load(userId: number, options?: DataOptions): Promise<User>;
|
|
24
|
+
loadMany(ids: number[], options?: DataOptions): Promise<User[]>;
|
|
25
|
+
loadDriversByTeam(teamId: number, options?: DataOptions): Promise<Driver[]>;
|
|
13
26
|
loadAll(options?: DataOptions): Promise<User[]>;
|
|
27
|
+
getAllDrivers({ limit, page_action, cursor, options }: KeysetPaginationRequest<GetAllDriversOptions>): Promise<AllDriversResponse>;
|
|
28
|
+
messageDriver(userId: number, message: string): Promise<number>;
|
|
29
|
+
unlock(userId: number): Promise<boolean>;
|
|
30
|
+
validatePhone(phone: string): Promise<boolean>;
|
|
14
31
|
getGroup(group: GROUP_VALUES): User[];
|
|
15
32
|
get(id: number): User;
|
|
16
33
|
getMany(ids: number[]): Record<number, User>;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
34
|
+
getOfflineDrivers(): User[];
|
|
35
|
+
getOnlineDrivers(): User[];
|
|
36
|
+
getAllLocalDrivers(): User[];
|
|
37
|
+
getOnShiftDrivers(): User[];
|
|
38
|
+
onCreate(callback: (user: MappedStorableItem<User>) => void): StorableEventUnsubscribe;
|
|
39
|
+
onUpdate(callback: (user: MappedStorableItem<User>) => void): StorableEventUnsubscribe;
|
|
40
|
+
onDelete(callback: (user: MappedStorableItem<User>) => void): StorableEventUnsubscribe;
|
|
20
41
|
}
|
|
@@ -50,23 +50,55 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
50
50
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
51
51
|
};
|
|
52
52
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
53
|
+
var lodash_1 = require("lodash");
|
|
54
|
+
var BringgException_1 = require("../../Core/BringgException");
|
|
55
|
+
var ExceptionReason_1 = require("../../Core/ExceptionReason");
|
|
53
56
|
var merge_mapper_1 = require("../../Data/merge-mapper");
|
|
54
57
|
var storable_realtime_subscriptions_1 = __importDefault(require("../../Data/storable-realtime-subscriptions"));
|
|
58
|
+
var data_entity_1 = require("../../data-entity");
|
|
55
59
|
var data_store_1 = __importDefault(require("../../data-store"));
|
|
56
60
|
var storable_data_service_1 = __importDefault(require("../../storable-data-service"));
|
|
61
|
+
var keyset_pagination_consts_1 = require("../../utils/consts/keyset-pagination.consts");
|
|
57
62
|
var User_consts_1 = require("../User.consts");
|
|
58
63
|
var users_service_1 = __importDefault(require("./users-service"));
|
|
59
64
|
var UsersApi = /** @class */ (function () {
|
|
60
65
|
function UsersApi(session) {
|
|
61
66
|
var _this = this;
|
|
62
|
-
|
|
67
|
+
var groupFilters = [
|
|
68
|
+
{
|
|
69
|
+
groupType: User_consts_1.UserGroupTypes.Main,
|
|
70
|
+
keyFunc: function (user) { return (0, User_consts_1.userToGroupsMapper)(user); }
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
groupType: 'team',
|
|
74
|
+
keyFunc: function (user) { return user.team_ids || []; }
|
|
75
|
+
}
|
|
76
|
+
];
|
|
77
|
+
this.userStore = new data_store_1.default(groupFilters, { shallow: true });
|
|
63
78
|
this.usersService = new users_service_1.default(session);
|
|
64
79
|
this.storableDataService = new storable_data_service_1.default(this.userStore, function (user) {
|
|
65
80
|
return merge_mapper_1.mergeMapper.mergeIntoExisting(_this.userStore, user);
|
|
66
81
|
});
|
|
67
82
|
this.storableRealtimeSubscriptions = new storable_realtime_subscriptions_1.default(session, this.userStore, this.storableDataService);
|
|
68
|
-
this.storableRealtimeSubscriptions.updateStoreOnEvents([
|
|
83
|
+
this.storableRealtimeSubscriptions.updateStoreOnEvents([
|
|
84
|
+
{ name: User_consts_1.RealtimeEvents.Update, isDelete: false },
|
|
85
|
+
{ name: User_consts_1.RealtimeEvents.Create, isDelete: false },
|
|
86
|
+
{ name: User_consts_1.RealtimeEvents.Delete, isDelete: true }
|
|
87
|
+
]);
|
|
69
88
|
}
|
|
89
|
+
/**
|
|
90
|
+
* Initialize group filters for user categorization
|
|
91
|
+
* This sets up the realtime subscriptions for proper store management
|
|
92
|
+
* for now keep this, need to check if this is needed
|
|
93
|
+
*/
|
|
94
|
+
// public updateStoreOnEvents() {
|
|
95
|
+
// // This mirrors the pattern from TasksApi and other v2 APIs
|
|
96
|
+
// this.storableRealtimeSubscriptions.updateStoreOnEvents([
|
|
97
|
+
// { name: RealtimeEvents.Update, isDelete: false },
|
|
98
|
+
// { name: RealtimeEvents.Create, isDelete: false },
|
|
99
|
+
// { name: RealtimeEvents.Delete, isDelete: true }
|
|
100
|
+
// ]);
|
|
101
|
+
// }
|
|
70
102
|
UsersApi.prototype.delete = function (userId) {
|
|
71
103
|
return __awaiter(this, void 0, void 0, function () {
|
|
72
104
|
var response;
|
|
@@ -90,35 +122,45 @@ var UsersApi = /** @class */ (function () {
|
|
|
90
122
|
});
|
|
91
123
|
});
|
|
92
124
|
};
|
|
93
|
-
UsersApi.prototype.
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
var response;
|
|
125
|
+
UsersApi.prototype.create = function (user) {
|
|
126
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
127
|
+
var _this = this;
|
|
97
128
|
return __generator(this, function (_a) {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
case 1:
|
|
101
|
-
response = _a.sent();
|
|
102
|
-
return [2 /*return*/, response.users];
|
|
129
|
+
if ((0, lodash_1.isNil)(user.email) && (0, lodash_1.isNil)(user.phone)) {
|
|
130
|
+
throw new BringgException_1.BringgException(ExceptionReason_1.ExceptionReason.INVALID_ARGUMENTS, 'Phone or Email is required');
|
|
103
131
|
}
|
|
132
|
+
return [2 /*return*/, this.storableDataService.modify('create', function () { return _this.usersService.create(user); })];
|
|
104
133
|
});
|
|
105
|
-
});
|
|
106
|
-
};
|
|
107
|
-
UsersApi.prototype.getGroup = function (group) {
|
|
108
|
-
return this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, group);
|
|
134
|
+
});
|
|
109
135
|
};
|
|
110
|
-
UsersApi.prototype.
|
|
111
|
-
return this
|
|
136
|
+
UsersApi.prototype.update = function (userId, userDelta) {
|
|
137
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
138
|
+
var _this = this;
|
|
139
|
+
return __generator(this, function (_a) {
|
|
140
|
+
return [2 /*return*/, this.storableDataService.modify('update', function () { return _this.usersService.update(userId, userDelta); }, function (modifiedUser) {
|
|
141
|
+
var currentUser = _this.usersService.session.user;
|
|
142
|
+
if (currentUser.id === modifiedUser.current.id) {
|
|
143
|
+
_this.usersService.session.user = (0, lodash_1.merge)(currentUser, modifiedUser.current);
|
|
144
|
+
_this.usersService.session.sendDataEvent(User_consts_1.UserEvents.CURRENT_USER_UPDATED, _this.usersService.session.user);
|
|
145
|
+
}
|
|
146
|
+
})];
|
|
147
|
+
});
|
|
148
|
+
});
|
|
112
149
|
};
|
|
113
|
-
UsersApi.prototype.
|
|
114
|
-
|
|
150
|
+
UsersApi.prototype.load = function (userId, options) {
|
|
151
|
+
if (options === void 0) { options = data_entity_1.DEFAULT_OPTIONS; }
|
|
152
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
153
|
+
var _this = this;
|
|
154
|
+
return __generator(this, function (_a) {
|
|
155
|
+
return [2 /*return*/, this.storableDataService.load('load', function () { return _this.usersService.get(userId); }, userId, options)];
|
|
156
|
+
});
|
|
157
|
+
});
|
|
115
158
|
};
|
|
116
159
|
UsersApi.prototype.loadMany = function (ids, options) {
|
|
117
160
|
if (options === void 0) { options = { useCache: true }; }
|
|
118
161
|
return __awaiter(this, void 0, void 0, function () {
|
|
119
162
|
var _this = this;
|
|
120
163
|
return __generator(this, function (_a) {
|
|
121
|
-
// If no IDs provided, return empty array without making API call
|
|
122
164
|
if (ids.length === 0) {
|
|
123
165
|
return [2 /*return*/, []];
|
|
124
166
|
}
|
|
@@ -126,9 +168,12 @@ var UsersApi = /** @class */ (function () {
|
|
|
126
168
|
var response;
|
|
127
169
|
return __generator(this, function (_a) {
|
|
128
170
|
switch (_a.label) {
|
|
129
|
-
case 0:
|
|
171
|
+
case 0:
|
|
172
|
+
console.log('users loadAll idsToLoad', idsToLoad);
|
|
173
|
+
return [4 /*yield*/, this.usersService.loadAll({ ids: idsToLoad })];
|
|
130
174
|
case 1:
|
|
131
175
|
response = _a.sent();
|
|
176
|
+
console.log('users loadAll response', response);
|
|
132
177
|
return [2 /*return*/, response.users];
|
|
133
178
|
}
|
|
134
179
|
});
|
|
@@ -136,23 +181,140 @@ var UsersApi = /** @class */ (function () {
|
|
|
136
181
|
});
|
|
137
182
|
});
|
|
138
183
|
};
|
|
139
|
-
UsersApi.prototype.
|
|
140
|
-
return this
|
|
184
|
+
UsersApi.prototype.loadDriversByTeam = function (teamId, options) {
|
|
185
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
186
|
+
var _this = this;
|
|
187
|
+
return __generator(this, function (_a) {
|
|
188
|
+
return [2 /*return*/, this.storableDataService.loadAll('loadDriversByTeam', function () { return __awaiter(_this, void 0, void 0, function () {
|
|
189
|
+
var users;
|
|
190
|
+
return __generator(this, function (_a) {
|
|
191
|
+
switch (_a.label) {
|
|
192
|
+
case 0: return [4 /*yield*/, this.usersService.loadAllByTeams(teamId)];
|
|
193
|
+
case 1:
|
|
194
|
+
users = _a.sent();
|
|
195
|
+
return [2 /*return*/, users];
|
|
196
|
+
}
|
|
197
|
+
});
|
|
198
|
+
}); }, __assign(__assign({}, options), { groupType: 'team', groupValue: teamId }))];
|
|
199
|
+
});
|
|
200
|
+
});
|
|
141
201
|
};
|
|
142
|
-
|
|
202
|
+
// Pagination methods
|
|
203
|
+
// TODO: convert options:DataOptions to page and limit
|
|
204
|
+
UsersApi.prototype.loadAll = function (options) {
|
|
143
205
|
return __awaiter(this, void 0, void 0, function () {
|
|
144
|
-
var
|
|
206
|
+
var _this = this;
|
|
145
207
|
return __generator(this, function (_a) {
|
|
146
|
-
|
|
147
|
-
|
|
208
|
+
return [2 /*return*/, this.storableDataService.loadAll('loadAll', function () { return __awaiter(_this, void 0, void 0, function () {
|
|
209
|
+
var response;
|
|
210
|
+
return __generator(this, function (_a) {
|
|
211
|
+
switch (_a.label) {
|
|
212
|
+
case 0: return [4 /*yield*/, this.usersService.loadAll({}, { signal: options === null || options === void 0 ? void 0 : options.signal })];
|
|
213
|
+
case 1:
|
|
214
|
+
response = _a.sent();
|
|
215
|
+
return [2 /*return*/, response.users];
|
|
216
|
+
}
|
|
217
|
+
});
|
|
218
|
+
}); }, options)];
|
|
219
|
+
});
|
|
220
|
+
});
|
|
221
|
+
};
|
|
222
|
+
UsersApi.prototype.getAllDrivers = function (_a) {
|
|
223
|
+
var _b = _a.limit, limit = _b === void 0 ? 25 : _b, _c = _a.page_action, page_action = _c === void 0 ? keyset_pagination_consts_1.KeysetPaginationPageAction.NEXT : _c, cursor = _a.cursor, options = _a.options;
|
|
224
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
225
|
+
var optionsWithDefaults, loadResult;
|
|
226
|
+
var _this = this;
|
|
227
|
+
return __generator(this, function (_d) {
|
|
228
|
+
switch (_d.label) {
|
|
229
|
+
case 0:
|
|
230
|
+
optionsWithDefaults = (0, lodash_1.defaults)(options, { onlyOnlineDriver: false, onlyCustomers: false });
|
|
231
|
+
return [4 /*yield*/, this.storableDataService.loadAll('getAllDrivers', function () { return __awaiter(_this, void 0, void 0, function () {
|
|
232
|
+
var result;
|
|
233
|
+
return __generator(this, function (_a) {
|
|
234
|
+
switch (_a.label) {
|
|
235
|
+
case 0: return [4 /*yield*/, this.usersService.getAllDrivers({
|
|
236
|
+
limit: limit,
|
|
237
|
+
page_action: page_action,
|
|
238
|
+
cursor: cursor,
|
|
239
|
+
options: optionsWithDefaults
|
|
240
|
+
})];
|
|
241
|
+
case 1:
|
|
242
|
+
result = _a.sent();
|
|
243
|
+
loadResult = result;
|
|
244
|
+
return [2 /*return*/, result.users];
|
|
245
|
+
}
|
|
246
|
+
});
|
|
247
|
+
}); }, {
|
|
248
|
+
useCache: true,
|
|
249
|
+
// Group drivers appropriately based on options
|
|
250
|
+
groupType: User_consts_1.UserGroupTypes.Main,
|
|
251
|
+
groupValue: optionsWithDefaults.onlyCustomers ? User_consts_1.GROUP_VALUES.Customers : User_consts_1.GROUP_VALUES.Drivers
|
|
252
|
+
})];
|
|
148
253
|
case 1:
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
return [2 /*return*/, users];
|
|
254
|
+
_d.sent();
|
|
255
|
+
return [2 /*return*/, __assign(__assign({}, loadResult), { users: loadResult.users.map(function (user) { return _this.userStore.get(user.id); }) })];
|
|
152
256
|
}
|
|
153
257
|
});
|
|
154
258
|
});
|
|
155
259
|
};
|
|
260
|
+
// Business logic methods
|
|
261
|
+
UsersApi.prototype.messageDriver = function (userId, message) {
|
|
262
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
263
|
+
return __generator(this, function (_a) {
|
|
264
|
+
return [2 /*return*/, this.usersService.messageDriver(userId, message)];
|
|
265
|
+
});
|
|
266
|
+
});
|
|
267
|
+
};
|
|
268
|
+
UsersApi.prototype.unlock = function (userId) {
|
|
269
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
270
|
+
return __generator(this, function (_a) {
|
|
271
|
+
return [2 /*return*/, this.usersService.unlock(userId)];
|
|
272
|
+
});
|
|
273
|
+
});
|
|
274
|
+
};
|
|
275
|
+
UsersApi.prototype.validatePhone = function (phone) {
|
|
276
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
277
|
+
return __generator(this, function (_a) {
|
|
278
|
+
return [2 /*return*/, this.usersService.validatePhone(phone)];
|
|
279
|
+
});
|
|
280
|
+
});
|
|
281
|
+
};
|
|
282
|
+
// Store query methods - direct access to local store without API calls
|
|
283
|
+
UsersApi.prototype.getGroup = function (group) {
|
|
284
|
+
return this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, group);
|
|
285
|
+
};
|
|
286
|
+
UsersApi.prototype.get = function (id) {
|
|
287
|
+
return this.userStore.get(id);
|
|
288
|
+
};
|
|
289
|
+
UsersApi.prototype.getMany = function (ids) {
|
|
290
|
+
return this.userStore.getMany(ids);
|
|
291
|
+
};
|
|
292
|
+
UsersApi.prototype.getOfflineDrivers = function () {
|
|
293
|
+
var group = this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, User_consts_1.GROUP_VALUES.OfflineDrivers);
|
|
294
|
+
return group ? Array.from(group) : [];
|
|
295
|
+
};
|
|
296
|
+
UsersApi.prototype.getOnlineDrivers = function () {
|
|
297
|
+
var group = this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, User_consts_1.GROUP_VALUES.OnlineDrivers);
|
|
298
|
+
return group ? Array.from(group) : [];
|
|
299
|
+
};
|
|
300
|
+
UsersApi.prototype.getAllLocalDrivers = function () {
|
|
301
|
+
var group = this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, User_consts_1.GROUP_VALUES.Drivers);
|
|
302
|
+
return group ? Array.from(group) : [];
|
|
303
|
+
};
|
|
304
|
+
UsersApi.prototype.getOnShiftDrivers = function () {
|
|
305
|
+
var group = this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, User_consts_1.GROUP_VALUES.OnShiftDrivers);
|
|
306
|
+
return group ? Array.from(group) : [];
|
|
307
|
+
};
|
|
308
|
+
// Additional callback methods
|
|
309
|
+
UsersApi.prototype.onCreate = function (callback) {
|
|
310
|
+
return this.storableRealtimeSubscriptions.onEvent(User_consts_1.RealtimeEvents.Create, callback);
|
|
311
|
+
};
|
|
312
|
+
UsersApi.prototype.onUpdate = function (callback) {
|
|
313
|
+
return this.storableRealtimeSubscriptions.onEvent(User_consts_1.RealtimeEvents.Update, callback);
|
|
314
|
+
};
|
|
315
|
+
UsersApi.prototype.onDelete = function (callback) {
|
|
316
|
+
return this.storableRealtimeSubscriptions.onEvent(User_consts_1.RealtimeEvents.Delete, callback);
|
|
317
|
+
};
|
|
156
318
|
return UsersApi;
|
|
157
319
|
}());
|
|
158
320
|
exports.default = UsersApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"users-api.js","sourceRoot":"","sources":["../../../src/User/v2/users-api.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"users-api.js","sourceRoot":"","sources":["../../../src/User/v2/users-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,29 @@
|
|
|
1
1
|
import { User } from '@bringg/types';
|
|
2
2
|
import { CommonOptions } from '../../Core/RouteGenerator';
|
|
3
3
|
import Session from '../../Services/Identity/Session';
|
|
4
|
-
import {
|
|
4
|
+
import { KeysetPaginationRequest } from '../../utils/consts/keyset-pagination.consts';
|
|
5
|
+
import { AllDriversResponse, AllUsersResponse } from '../User.consts';
|
|
6
|
+
import { GetAllDriversOptions } from '../Users';
|
|
5
7
|
export default class UsersService {
|
|
6
8
|
private readonly service;
|
|
7
9
|
constructor(session: Session);
|
|
10
|
+
get session(): Session;
|
|
8
11
|
delete(userId: number): Promise<import("../../Core/CrudService").DELETE_RESPONSE>;
|
|
12
|
+
create(user: Partial<User>): Promise<User>;
|
|
13
|
+
update(userId: number, userDelta: Partial<User>): Promise<User>;
|
|
14
|
+
get(userId: number): Promise<User>;
|
|
9
15
|
loadAll(query?: {
|
|
10
16
|
ids?: number[];
|
|
11
17
|
page?: number;
|
|
12
18
|
limit?: number;
|
|
13
|
-
}, commonOptions?: CommonOptions): Promise<
|
|
19
|
+
}, commonOptions?: CommonOptions): Promise<AllUsersResponse>;
|
|
14
20
|
loadAllByTeams(teamId: number, commonOptions?: CommonOptions): Promise<User[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Generic method for keyset pagination with optional scoping
|
|
23
|
+
*/
|
|
24
|
+
private getAllUsersWithKeysetPagination;
|
|
25
|
+
getAllDrivers(request: KeysetPaginationRequest<GetAllDriversOptions>): Promise<AllDriversResponse>;
|
|
26
|
+
unlock(userId: number): Promise<boolean>;
|
|
27
|
+
validatePhone(phone: string): Promise<boolean>;
|
|
28
|
+
messageDriver(userId: number, message: string): Promise<number>;
|
|
15
29
|
}
|