@bringg/dashboard-sdk 9.53.1 → 9.54.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22426,7 +22426,7 @@ var lodash_1 = __webpack_require__(96486);
22426
22426
  var BringgException_1 = __webpack_require__(43605);
22427
22427
  var Logger_1 = __importDefault(__webpack_require__(55860));
22428
22428
  var abort_1 = __webpack_require__(34179);
22429
- var version = '9.53.1';
22429
+ var version = '9.54.0';
22430
22430
  function logErrorResponse(response) {
22431
22431
  var data = response.data, status = response.status;
22432
22432
  try {
@@ -29729,7 +29729,12 @@ exports.ROUTES = {
29729
29729
  UNLOCK: "".concat(exports.baseRoute, "/{:userId}/unlock"),
29730
29730
  MESSAGE_DRIVER: '/announcement/user/{:userId}',
29731
29731
  VALIDATE_PHONE: '/api/user/validate_phone',
29732
- DELETE_MANY: '/users/batch_delete'
29732
+ DELETE_MANY: '/users/batch_delete',
29733
+ DRIVER_COST: '/users/{:userId}/driver_cost',
29734
+ GET_USERS_WITH_USER_TYPE: '/user_types/{:userTypeId}/users',
29735
+ INVITE: '/users/{:userId}/reinvite',
29736
+ CLOSED_TASKS: '/users/{:userId}/tasks/closed_tasks',
29737
+ TOTAL_TASKS: '/users/{:userId}/tasks/count'
29733
29738
  };
29734
29739
  var UserEvents;
29735
29740
  (function (UserEvents) {
@@ -29755,7 +29760,8 @@ exports.groupFilter = new Map([
29755
29760
  [GROUP_VALUES.OnShiftDrivers, UserHelpers_1.UserHelpers.isOnShiftDriver],
29756
29761
  [GROUP_VALUES.Customers, UserHelpers_1.UserHelpers.isCustomer],
29757
29762
  [GROUP_VALUES.Admins, UserHelpers_1.UserHelpers.isAdmin],
29758
- [GROUP_VALUES.Dispatchers, UserHelpers_1.UserHelpers.isDispatcher]
29763
+ [GROUP_VALUES.Dispatchers, UserHelpers_1.UserHelpers.isDispatcher],
29764
+ [GROUP_VALUES.Drivers, UserHelpers_1.UserHelpers.isDriver]
29759
29765
  ]);
29760
29766
  var groupKeys = Array.from(exports.groupFilter.keys());
29761
29767
  var userToGroupsMapper = function (user) {
@@ -29820,6 +29826,9 @@ var UserHelpers = /** @class */ (function () {
29820
29826
  UserHelpers.isDispatcher = function (user) {
29821
29827
  return user.dispatcher === true;
29822
29828
  };
29829
+ UserHelpers.isDriver = function (user) {
29830
+ return user.driver === true;
29831
+ };
29823
29832
  return UserHelpers;
29824
29833
  }());
29825
29834
  exports.UserHelpers = UserHelpers;
@@ -30220,8 +30229,8 @@ var UsersApi = /** @class */ (function () {
30220
30229
  keyFunc: function (user) { return (0, User_consts_1.userToGroupsMapper)(user); }
30221
30230
  },
30222
30231
  {
30223
- groupType: 'team',
30224
- keyFunc: function (user) { return user.team_ids || []; }
30232
+ groupType: 'teamAndDriver',
30233
+ keyFunc: function (user) { return (user.driver && user.team_ids) || []; }
30225
30234
  }
30226
30235
  ];
30227
30236
  this.userStore = new data_store_1.default(groupFilters, { shallow: true });
@@ -30231,7 +30240,13 @@ var UsersApi = /** @class */ (function () {
30231
30240
  });
30232
30241
  this.storableRealtimeSubscriptions = new storable_realtime_subscriptions_1.default(session, this.userStore, this.storableDataService);
30233
30242
  this.storableRealtimeSubscriptions.updateStoreOnEvents([
30234
- { name: User_consts_1.RealtimeEvents.Update, isDelete: false },
30243
+ {
30244
+ name: User_consts_1.RealtimeEvents.Update,
30245
+ isDelete: false,
30246
+ extraDataFunc: function (user) {
30247
+ return { ignore: !_this.userStore.get(user.id) };
30248
+ }
30249
+ },
30235
30250
  { name: User_consts_1.RealtimeEvents.Create, isDelete: false },
30236
30251
  { name: User_consts_1.RealtimeEvents.Delete, isDelete: true }
30237
30252
  ]);
@@ -30354,63 +30369,101 @@ var UsersApi = /** @class */ (function () {
30354
30369
  return [2 /*return*/, users];
30355
30370
  }
30356
30371
  });
30357
- }); }, __assign(__assign({}, options), { groupType: 'team', groupValue: teamId }))];
30372
+ }); }, __assign(__assign({}, options), { groupType: 'teamAndDriver', groupValue: teamId }))];
30358
30373
  });
30359
30374
  });
30360
30375
  };
30361
30376
  // Pagination methods
30362
- UsersApi.prototype.loadAll = function (options) {
30377
+ UsersApi.prototype.loadAll = function (_a) {
30378
+ var _b = _a === void 0 ? {} : _a, _c = _b.limit, limit = _c === void 0 ? 2500 : _c, page = _b.page, _d = _b.page_action, page_action = _d === void 0 ? keyset_pagination_consts_1.KeysetPaginationPageAction.NEXT : _d, cursor = _b.cursor, options = _b.options;
30363
30379
  return __awaiter(this, void 0, void 0, function () {
30380
+ var loadResult, loadFunc, users;
30364
30381
  var _this = this;
30365
- return __generator(this, function (_a) {
30366
- return [2 /*return*/, this.storableDataService.loadAll('loadAll', function () { return __awaiter(_this, void 0, void 0, function () {
30367
- var response;
30368
- return __generator(this, function (_a) {
30369
- switch (_a.label) {
30370
- case 0: return [4 /*yield*/, this.usersService.loadAll({}, { signal: options === null || options === void 0 ? void 0 : options.signal })];
30371
- case 1:
30372
- response = _a.sent();
30373
- return [2 /*return*/, response.users];
30374
- }
30375
- });
30376
- }); }, options)];
30382
+ return __generator(this, function (_e) {
30383
+ switch (_e.label) {
30384
+ case 0:
30385
+ loadFunc = function () { return __awaiter(_this, void 0, void 0, function () {
30386
+ var response;
30387
+ return __generator(this, function (_a) {
30388
+ switch (_a.label) {
30389
+ case 0: return [4 /*yield*/, this.usersService.loadAll({ limit: limit, page: page, page_action: page_action, cursor: cursor }, { signal: options === null || options === void 0 ? void 0 : options.signal })];
30390
+ case 1:
30391
+ response = _a.sent();
30392
+ loadResult = response;
30393
+ return [2 /*return*/, response.users];
30394
+ }
30395
+ });
30396
+ }); };
30397
+ return [4 /*yield*/, this.storableDataService.loadMany('loadAll', loadFunc, [], options)];
30398
+ case 1:
30399
+ users = _e.sent();
30400
+ return [2 /*return*/, __assign(__assign({}, loadResult), { users: users })];
30401
+ }
30377
30402
  });
30378
30403
  });
30379
30404
  };
30380
30405
  UsersApi.prototype.getAllDrivers = function (_a) {
30381
30406
  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;
30382
30407
  return __awaiter(this, void 0, void 0, function () {
30383
- var optionsWithDefaults, loadResult;
30408
+ var optionsWithDefaults, loadResult, loadFunc, users;
30384
30409
  var _this = this;
30385
30410
  return __generator(this, function (_d) {
30386
30411
  switch (_d.label) {
30387
30412
  case 0:
30388
30413
  optionsWithDefaults = (0, lodash_1.defaults)(options, { onlyOnlineDriver: false, onlyCustomers: false });
30389
- return [4 /*yield*/, this.storableDataService.loadAll('getAllDrivers', function () { return __awaiter(_this, void 0, void 0, function () {
30390
- var result;
30391
- return __generator(this, function (_a) {
30392
- switch (_a.label) {
30393
- case 0: return [4 /*yield*/, this.usersService.getAllDrivers({
30394
- limit: limit,
30395
- page_action: page_action,
30396
- cursor: cursor,
30397
- options: optionsWithDefaults
30398
- })];
30399
- case 1:
30400
- result = _a.sent();
30401
- loadResult = result;
30402
- return [2 /*return*/, result.users];
30403
- }
30404
- });
30405
- }); }, {
30406
- useCache: true,
30407
- // Group drivers appropriately based on options
30408
- groupType: User_consts_1.UserGroupTypes.Main,
30409
- groupValue: optionsWithDefaults.onlyCustomers ? User_consts_1.GROUP_VALUES.Customers : User_consts_1.GROUP_VALUES.Drivers
30410
- })];
30414
+ loadFunc = function () { return __awaiter(_this, void 0, void 0, function () {
30415
+ var result;
30416
+ return __generator(this, function (_a) {
30417
+ switch (_a.label) {
30418
+ case 0: return [4 /*yield*/, this.usersService.getAllDrivers({
30419
+ limit: limit,
30420
+ page_action: page_action,
30421
+ cursor: cursor,
30422
+ options: optionsWithDefaults
30423
+ })];
30424
+ case 1:
30425
+ result = _a.sent();
30426
+ loadResult = result;
30427
+ return [2 /*return*/, result.users];
30428
+ }
30429
+ });
30430
+ }); };
30431
+ return [4 /*yield*/, this.storableDataService.loadMany('getAllDrivers', loadFunc, [])];
30411
30432
  case 1:
30412
- _d.sent();
30413
- return [2 /*return*/, __assign(__assign({}, loadResult), { users: loadResult.users.map(function (user) { return _this.userStore.get(user.id); }) })];
30433
+ users = _d.sent();
30434
+ return [2 /*return*/, __assign(__assign({}, loadResult), { users: users })];
30435
+ }
30436
+ });
30437
+ });
30438
+ };
30439
+ UsersApi.prototype.getAllAdminsAndDispatchers = function (_a) {
30440
+ 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;
30441
+ return __awaiter(this, void 0, void 0, function () {
30442
+ var loadResult, loadFunc, users;
30443
+ var _this = this;
30444
+ return __generator(this, function (_d) {
30445
+ switch (_d.label) {
30446
+ case 0:
30447
+ loadFunc = function () { return __awaiter(_this, void 0, void 0, function () {
30448
+ var result;
30449
+ return __generator(this, function (_a) {
30450
+ switch (_a.label) {
30451
+ case 0: return [4 /*yield*/, this.usersService.getAllAdminsAndDispatchers({
30452
+ limit: limit,
30453
+ page_action: page_action,
30454
+ cursor: cursor
30455
+ })];
30456
+ case 1:
30457
+ result = _a.sent();
30458
+ loadResult = result;
30459
+ return [2 /*return*/, result.users];
30460
+ }
30461
+ });
30462
+ }); };
30463
+ return [4 /*yield*/, this.storableDataService.loadMany('getAllAdminsAndDispatchers', loadFunc, [])];
30464
+ case 1:
30465
+ users = _d.sent();
30466
+ return [2 /*return*/, __assign(__assign({}, loadResult), { users: users })];
30414
30467
  }
30415
30468
  });
30416
30469
  });
@@ -30437,12 +30490,54 @@ var UsersApi = /** @class */ (function () {
30437
30490
  });
30438
30491
  });
30439
30492
  };
30493
+ UsersApi.prototype.getDriverCost = function (userId) {
30494
+ return __awaiter(this, void 0, void 0, function () {
30495
+ return __generator(this, function (_a) {
30496
+ return [2 /*return*/, this.usersService.getDriverCost(userId)];
30497
+ });
30498
+ });
30499
+ };
30500
+ UsersApi.prototype.invite = function (userId) {
30501
+ return __awaiter(this, void 0, void 0, function () {
30502
+ var user;
30503
+ return __generator(this, function (_a) {
30504
+ switch (_a.label) {
30505
+ case 0: return [4 /*yield*/, this.usersService.invite(userId)];
30506
+ case 1:
30507
+ user = _a.sent();
30508
+ this.storableDataService.updateInStores(user);
30509
+ return [2 /*return*/, user];
30510
+ }
30511
+ });
30512
+ });
30513
+ };
30514
+ UsersApi.prototype.closedTasks = function (userId, page) {
30515
+ return __awaiter(this, void 0, void 0, function () {
30516
+ return __generator(this, function (_a) {
30517
+ return [2 /*return*/, this.usersService.closedTasks(userId, page)];
30518
+ });
30519
+ });
30520
+ };
30521
+ UsersApi.prototype.assignedTasksCount = function (userId) {
30522
+ return __awaiter(this, void 0, void 0, function () {
30523
+ return __generator(this, function (_a) {
30524
+ return [2 /*return*/, this.usersService.assignedTasksCount(userId)];
30525
+ });
30526
+ });
30527
+ };
30528
+ UsersApi.prototype.byUserType = function (userTypeId) {
30529
+ return __awaiter(this, void 0, void 0, function () {
30530
+ return __generator(this, function (_a) {
30531
+ return [2 /*return*/, this.usersService.byUserType(userTypeId)];
30532
+ });
30533
+ });
30534
+ };
30440
30535
  // Store query methods - direct access to local store without API calls
30441
30536
  UsersApi.prototype.getGroup = function (group) {
30442
30537
  return this.userStore.getGroup(User_consts_1.UserGroupTypes.Main, group);
30443
30538
  };
30444
30539
  UsersApi.prototype.getTeamGroup = function (teamId) {
30445
- return this.userStore.getGroup('team', teamId);
30540
+ return this.userStore.getGroup('teamAndDriver', teamId);
30446
30541
  };
30447
30542
  UsersApi.prototype.get = function (id) {
30448
30543
  return this.userStore.get(id);
@@ -30531,6 +30626,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
30531
30626
  return (mod && mod.__esModule) ? mod : { "default": mod };
30532
30627
  };
30533
30628
  Object.defineProperty(exports, "__esModule", ({ value: true }));
30629
+ var types_1 = __webpack_require__(63127);
30534
30630
  var CrudService_1 = __importDefault(__webpack_require__(14809));
30535
30631
  var User_consts_1 = __webpack_require__(38894);
30536
30632
  var UsersService = /** @class */ (function () {
@@ -30563,6 +30659,31 @@ var UsersService = /** @class */ (function () {
30563
30659
  });
30564
30660
  });
30565
30661
  };
30662
+ UsersService.prototype.closedTasks = function (userId, page) {
30663
+ return __awaiter(this, void 0, void 0, function () {
30664
+ return __generator(this, function (_a) {
30665
+ return [2 /*return*/, this.service.routeGenerator
30666
+ .get(User_consts_1.ROUTES.CLOSED_TASKS)
30667
+ .withRouteParams({ userId: userId })
30668
+ .withQueryString({ page: page })
30669
+ .withExtractor(function (response) { return response; })
30670
+ .setException("Could not get closed tasks for user ".concat(userId))
30671
+ .invoke()];
30672
+ });
30673
+ });
30674
+ };
30675
+ UsersService.prototype.assignedTasksCount = function (userId) {
30676
+ return __awaiter(this, void 0, void 0, function () {
30677
+ return __generator(this, function (_a) {
30678
+ return [2 /*return*/, this.service.routeGenerator
30679
+ .get(User_consts_1.ROUTES.TOTAL_TASKS)
30680
+ .withRouteParams({ userId: userId })
30681
+ .withExtractor(function (response) { return response.count; })
30682
+ .setException("Could not get assigned tasks count for user ".concat(userId))
30683
+ .invoke()];
30684
+ });
30685
+ });
30686
+ };
30566
30687
  UsersService.prototype.create = function (user) {
30567
30688
  return __awaiter(this, void 0, void 0, function () {
30568
30689
  return __generator(this, function (_a) {
@@ -30584,14 +30705,19 @@ var UsersService = /** @class */ (function () {
30584
30705
  });
30585
30706
  });
30586
30707
  };
30587
- UsersService.prototype.loadAll = function (query, commonOptions) {
30588
- if (query === void 0) { query = {}; }
30708
+ UsersService.prototype.loadAll = function (request, commonOptions) {
30589
30709
  return __awaiter(this, void 0, void 0, function () {
30710
+ var limit, page_action, cursor;
30590
30711
  return __generator(this, function (_a) {
30712
+ limit = request.limit, page_action = request.page_action, cursor = request.cursor;
30591
30713
  return [2 /*return*/, this.service.routeGenerator
30592
30714
  .get(User_consts_1.ROUTES.GET_ALL)
30593
- .withQueryString(query)
30594
- .withExtractor(function (response) { return ({ has_next_page: response.has_next_page, users: response.users }); })
30715
+ .withQueryString({ pgver: types_1.KEYSET_PAGINATION_VER, limit: limit, page_action: page_action, cursor: cursor })
30716
+ .withExtractor(function (response) { return ({
30717
+ next_page_cursor: response.next_page_cursor,
30718
+ previous_page_cursor: response.previous_page_cursor,
30719
+ users: response.users
30720
+ }); })
30595
30721
  .setException('Could not get users')
30596
30722
  .withCommonOptions(commonOptions)
30597
30723
  .invoke()];
@@ -30670,6 +30796,13 @@ var UsersService = /** @class */ (function () {
30670
30796
  });
30671
30797
  });
30672
30798
  };
30799
+ UsersService.prototype.getAllAdminsAndDispatchers = function (request) {
30800
+ return __awaiter(this, void 0, void 0, function () {
30801
+ return __generator(this, function (_a) {
30802
+ return [2 /*return*/, this.getAllUsersWithKeysetPagination(request, [User_consts_1.UsersScopes.DISPATCHERS, User_consts_1.UsersScopes.ADMINS], 'Could not get all admins and dispatchers')];
30803
+ });
30804
+ });
30805
+ };
30673
30806
  UsersService.prototype.unlock = function (userId) {
30674
30807
  return __awaiter(this, void 0, void 0, function () {
30675
30808
  return __generator(this, function (_a) {
@@ -30707,6 +30840,42 @@ var UsersService = /** @class */ (function () {
30707
30840
  });
30708
30841
  });
30709
30842
  };
30843
+ UsersService.prototype.getDriverCost = function (userId) {
30844
+ return __awaiter(this, void 0, void 0, function () {
30845
+ return __generator(this, function (_a) {
30846
+ return [2 /*return*/, this.service.routeGenerator
30847
+ .get(User_consts_1.ROUTES.DRIVER_COST)
30848
+ .withRouteParams({ userId: userId })
30849
+ .withExtractor(function (response) { return response; })
30850
+ .setException("Could not get driver cost for user ".concat(userId))
30851
+ .invoke()];
30852
+ });
30853
+ });
30854
+ };
30855
+ UsersService.prototype.byUserType = function (userTypeId) {
30856
+ return __awaiter(this, void 0, void 0, function () {
30857
+ return __generator(this, function (_a) {
30858
+ return [2 /*return*/, this.service.routeGenerator
30859
+ .get(User_consts_1.ROUTES.GET_USERS_WITH_USER_TYPE)
30860
+ .withRouteParams({ userTypeId: userTypeId })
30861
+ .withExtractor(function (response) { return response.users; })
30862
+ .setException("Could not get users with user type ".concat(userTypeId))
30863
+ .invoke()];
30864
+ });
30865
+ });
30866
+ };
30867
+ UsersService.prototype.invite = function (userId) {
30868
+ return __awaiter(this, void 0, void 0, function () {
30869
+ return __generator(this, function (_a) {
30870
+ return [2 /*return*/, this.service.routeGenerator
30871
+ .post(User_consts_1.ROUTES.INVITE)
30872
+ .withRouteParams({ userId: userId })
30873
+ .withExtractor(function (response) { return response.user; })
30874
+ .setException("Could not invite user with id: ".concat(userId))
30875
+ .invoke()];
30876
+ });
30877
+ });
30878
+ };
30710
30879
  return UsersService;
30711
30880
  }());
30712
30881
  exports["default"] = UsersService;