bruce-models 4.8.1 → 4.8.2

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.
@@ -2559,21 +2559,24 @@
2559
2559
  */
2560
2560
  function ReIndex(params) {
2561
2561
  return __awaiter(this, void 0, void 0, function* () {
2562
- let { api, entityTypeId: typeId, req } = params;
2563
- if (!typeId) {
2564
- throw ("Type ID is required.");
2565
- }
2562
+ let { api, entityTypeId: typeId, req, dataTransformId, reSaveAll } = params;
2566
2563
  if (!api) {
2567
2564
  api = exports.ENVIRONMENT.Api().GetBruceApi();
2568
2565
  }
2569
2566
  const urlParams = new URLSearchParams();
2570
- if (params.dataTransformId) {
2571
- urlParams.append("dataTransformID", String(params.dataTransformId));
2567
+ if (dataTransformId) {
2568
+ urlParams.append("dataTransformID", String(dataTransformId));
2572
2569
  }
2573
- const url = `entitytype/${typeId}/reindex?${urlParams.toString()}`;
2570
+ if (reSaveAll) {
2571
+ urlParams.append("reSaveAll", "true");
2572
+ }
2573
+ let url = typeId ? `entityType/${typeId}/reindex` : "entities/reindex";
2574
+ url += "?" + urlParams.toString();
2574
2575
  req = exports.Api.PrepReqParams(req);
2575
- const pa = yield api.POST(url, {}, req);
2576
- return pa;
2576
+ const res = yield api.POST(url, {}, req);
2577
+ return {
2578
+ pendingActionId: res.PendingActionID
2579
+ };
2577
2580
  });
2578
2581
  }
2579
2582
  EntityType.ReIndex = ReIndex;
@@ -10574,7 +10577,7 @@
10574
10577
  */
10575
10578
  function OnCompletion(params) {
10576
10579
  return __awaiter(this, void 0, void 0, function* () {
10577
- let { api, actionId, req: reqParams, interval: intMs, isDisposed } = params;
10580
+ let { api, actionId, req: reqParams, interval: intMs, isDisposed, onMessage } = params;
10578
10581
  if (!actionId) {
10579
10582
  throw ("Action ID is required.");
10580
10583
  }
@@ -10584,10 +10587,43 @@
10584
10587
  if (!intMs || intMs <= 0) {
10585
10588
  intMs = 3000;
10586
10589
  }
10590
+ // Map of found messages.
10591
+ const returnedMsgs = new Map();
10592
+ const returnedMsgsArr = [];
10587
10593
  const res = yield new Promise((res, rej) => {
10594
+ let msgInterval = null;
10595
+ if (onMessage != null) {
10596
+ msgInterval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
10597
+ try {
10598
+ const { messages } = yield GetMessages({
10599
+ api,
10600
+ actionId,
10601
+ order: exports.Api.ESortOrder.Desc,
10602
+ startIndex: 0,
10603
+ amount: 5
10604
+ });
10605
+ for (let i = 0; i < messages.length; i++) {
10606
+ const message = messages[i];
10607
+ // If this is a new message we'll notify the callback.
10608
+ // We'll also add it to the map so we don't notify it again, and to return it later.
10609
+ if (!returnedMsgs.has(message.ID)) {
10610
+ returnedMsgs.set(message.ID, true);
10611
+ returnedMsgsArr.push(message);
10612
+ onMessage(message);
10613
+ }
10614
+ }
10615
+ }
10616
+ catch (e) {
10617
+ clearInterval(msgInterval);
10618
+ }
10619
+ }), 1000);
10620
+ }
10588
10621
  let interval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
10589
10622
  if (isDisposed && isDisposed()) {
10590
10623
  clearInterval(interval);
10624
+ if (msgInterval) {
10625
+ clearInterval(msgInterval);
10626
+ }
10591
10627
  res(null);
10592
10628
  }
10593
10629
  try {
@@ -10598,16 +10634,41 @@
10598
10634
  });
10599
10635
  if (action.Status !== EStatus.InProgress) {
10600
10636
  clearInterval(interval);
10637
+ if (msgInterval) {
10638
+ clearInterval(msgInterval);
10639
+ }
10601
10640
  res(action);
10602
10641
  }
10603
10642
  }
10604
10643
  catch (e) {
10644
+ clearInterval(interval);
10645
+ if (msgInterval) {
10646
+ clearInterval(msgInterval);
10647
+ }
10605
10648
  rej(e);
10606
10649
  }
10607
10650
  }), intMs);
10608
10651
  });
10652
+ // Gather latest 30 messages.
10653
+ if (!isDisposed || !isDisposed()) {
10654
+ const { messages } = yield GetMessages({
10655
+ api,
10656
+ actionId,
10657
+ order: exports.Api.ESortOrder.Desc,
10658
+ startIndex: 0,
10659
+ amount: 30
10660
+ });
10661
+ for (let i = 0; i < messages.length; i++) {
10662
+ const message = messages[i];
10663
+ if (!returnedMsgs.has(message.ID)) {
10664
+ returnedMsgs.set(message.ID, true);
10665
+ returnedMsgsArr.push(message);
10666
+ }
10667
+ }
10668
+ }
10609
10669
  return {
10610
- action: res
10670
+ action: res,
10671
+ messages: returnedMsgsArr
10611
10672
  };
10612
10673
  });
10613
10674
  }
@@ -13980,7 +14041,7 @@
13980
14041
  })(exports.DataSource || (exports.DataSource = {}));
13981
14042
 
13982
14043
  // This is updated with the package.json version on build.
13983
- const VERSION = "4.8.1";
14044
+ const VERSION = "4.8.2";
13984
14045
 
13985
14046
  exports.VERSION = VERSION;
13986
14047
  exports.AbstractApi = AbstractApi;