bruce-models 4.8.1 → 4.8.3

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.
@@ -531,65 +531,27 @@
531
531
  */
532
532
  upload(url, blob, params) {
533
533
  return __awaiter(this, void 0, void 0, function* () {
534
- return new Promise((res, rej) => {
535
- try {
536
- let xhr = new XMLHttpRequest();
537
- const headers = params === null || params === void 0 ? void 0 : params.headers;
538
- if (headers) {
539
- const headerKeys = Object.keys(headers);
540
- for (let i = 0; i < headerKeys.length; i++) {
541
- const key = headerKeys[i];
542
- const value = headers[key];
543
- xhr.setRequestHeader(key, value);
544
- }
545
- }
546
- if (params === null || params === void 0 ? void 0 : params.onProgress) {
547
- if (xhr.upload) {
548
- xhr.upload.onprogress = params === null || params === void 0 ? void 0 : params.onProgress;
549
- }
550
- else {
551
- xhr.addEventListener("progress", params === null || params === void 0 ? void 0 : params.onProgress);
552
- }
553
- }
554
- xhr.onreadystatechange = (e) => {
555
- if (xhr.readyState == 4) {
556
- if (xhr.status >= 400 || xhr.status < 200) {
557
- rej(e);
558
- }
559
- else {
560
- try {
561
- res(JSON.parse(xhr.responseText));
562
- }
563
- catch (e) {
564
- console.error(e, xhr.responseText);
565
- res(xhr.responseText);
566
- }
567
- }
568
- }
569
- };
570
- xhr.open("POST", url, true);
571
- if (this.ssidHeader && this.ssid) {
572
- xhr.setRequestHeader(this.ssidHeader, this.ssid);
573
- }
574
- let formData;
575
- if ((params === null || params === void 0 ? void 0 : params.formData) instanceof FormData) {
576
- formData = params === null || params === void 0 ? void 0 : params.formData;
577
- }
578
- else {
579
- formData = new FormData();
580
- if (params === null || params === void 0 ? void 0 : params.formData) {
581
- for (const key in params.formData) {
582
- formData.append(key, params.formData[key]);
583
- }
584
- }
585
- }
586
- formData.append("file", blob);
587
- xhr.send(formData);
588
- }
589
- catch (e) {
590
- rej(e);
534
+ if (!params) {
535
+ params = {};
536
+ }
537
+ params.headers = params.headers || {};
538
+ params.headers = Object.assign({}, params.headers);
539
+ if (this.ssidHeader && this.ssid) {
540
+ params.headers[this.ssidHeader] = this.ssid;
541
+ }
542
+ const formData = new FormData();
543
+ formData.append("file", blob);
544
+ if (params === null || params === void 0 ? void 0 : params.formData) {
545
+ for (const key in params.formData) {
546
+ formData.append(key, params.formData[key]);
591
547
  }
548
+ }
549
+ const res = yield fetch(url, {
550
+ headers: params.headers,
551
+ method: "POST",
552
+ body: formData
592
553
  });
554
+ return parseResult(res);
593
555
  });
594
556
  }
595
557
  }
@@ -2559,21 +2521,24 @@
2559
2521
  */
2560
2522
  function ReIndex(params) {
2561
2523
  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
- }
2524
+ let { api, entityTypeId: typeId, req, dataTransformId, reSaveAll } = params;
2566
2525
  if (!api) {
2567
2526
  api = exports.ENVIRONMENT.Api().GetBruceApi();
2568
2527
  }
2569
2528
  const urlParams = new URLSearchParams();
2570
- if (params.dataTransformId) {
2571
- urlParams.append("dataTransformID", String(params.dataTransformId));
2529
+ if (dataTransformId) {
2530
+ urlParams.append("dataTransformID", String(dataTransformId));
2531
+ }
2532
+ if (reSaveAll) {
2533
+ urlParams.append("reSaveAll", "true");
2572
2534
  }
2573
- const url = `entitytype/${typeId}/reindex?${urlParams.toString()}`;
2535
+ let url = typeId ? `entityType/${typeId}/reindex` : "entities/reindex";
2536
+ url += "?" + urlParams.toString();
2574
2537
  req = exports.Api.PrepReqParams(req);
2575
- const pa = yield api.POST(url, {}, req);
2576
- return pa;
2538
+ const res = yield api.POST(url, {}, req);
2539
+ return {
2540
+ pendingActionId: res.PendingActionID
2541
+ };
2577
2542
  });
2578
2543
  }
2579
2544
  EntityType.ReIndex = ReIndex;
@@ -10574,7 +10539,7 @@
10574
10539
  */
10575
10540
  function OnCompletion(params) {
10576
10541
  return __awaiter(this, void 0, void 0, function* () {
10577
- let { api, actionId, req: reqParams, interval: intMs, isDisposed } = params;
10542
+ let { api, actionId, req: reqParams, interval: intMs, isDisposed, onMessage } = params;
10578
10543
  if (!actionId) {
10579
10544
  throw ("Action ID is required.");
10580
10545
  }
@@ -10584,10 +10549,43 @@
10584
10549
  if (!intMs || intMs <= 0) {
10585
10550
  intMs = 3000;
10586
10551
  }
10552
+ // Map of found messages.
10553
+ const returnedMsgs = new Map();
10554
+ const returnedMsgsArr = [];
10587
10555
  const res = yield new Promise((res, rej) => {
10556
+ let msgInterval = null;
10557
+ if (onMessage != null) {
10558
+ msgInterval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
10559
+ try {
10560
+ const { messages } = yield GetMessages({
10561
+ api,
10562
+ actionId,
10563
+ order: exports.Api.ESortOrder.Desc,
10564
+ startIndex: 0,
10565
+ amount: 5
10566
+ });
10567
+ for (let i = 0; i < messages.length; i++) {
10568
+ const message = messages[i];
10569
+ // If this is a new message we'll notify the callback.
10570
+ // We'll also add it to the map so we don't notify it again, and to return it later.
10571
+ if (!returnedMsgs.has(message.ID)) {
10572
+ returnedMsgs.set(message.ID, true);
10573
+ returnedMsgsArr.push(message);
10574
+ onMessage(message);
10575
+ }
10576
+ }
10577
+ }
10578
+ catch (e) {
10579
+ clearInterval(msgInterval);
10580
+ }
10581
+ }), 1000);
10582
+ }
10588
10583
  let interval = setInterval(() => __awaiter(this, void 0, void 0, function* () {
10589
10584
  if (isDisposed && isDisposed()) {
10590
10585
  clearInterval(interval);
10586
+ if (msgInterval) {
10587
+ clearInterval(msgInterval);
10588
+ }
10591
10589
  res(null);
10592
10590
  }
10593
10591
  try {
@@ -10598,16 +10596,41 @@
10598
10596
  });
10599
10597
  if (action.Status !== EStatus.InProgress) {
10600
10598
  clearInterval(interval);
10599
+ if (msgInterval) {
10600
+ clearInterval(msgInterval);
10601
+ }
10601
10602
  res(action);
10602
10603
  }
10603
10604
  }
10604
10605
  catch (e) {
10606
+ clearInterval(interval);
10607
+ if (msgInterval) {
10608
+ clearInterval(msgInterval);
10609
+ }
10605
10610
  rej(e);
10606
10611
  }
10607
10612
  }), intMs);
10608
10613
  });
10614
+ // Gather latest 30 messages.
10615
+ if (!isDisposed || !isDisposed()) {
10616
+ const { messages } = yield GetMessages({
10617
+ api,
10618
+ actionId,
10619
+ order: exports.Api.ESortOrder.Desc,
10620
+ startIndex: 0,
10621
+ amount: 30
10622
+ });
10623
+ for (let i = 0; i < messages.length; i++) {
10624
+ const message = messages[i];
10625
+ if (!returnedMsgs.has(message.ID)) {
10626
+ returnedMsgs.set(message.ID, true);
10627
+ returnedMsgsArr.push(message);
10628
+ }
10629
+ }
10630
+ }
10609
10631
  return {
10610
- action: res
10632
+ action: res,
10633
+ messages: returnedMsgsArr
10611
10634
  };
10612
10635
  });
10613
10636
  }
@@ -13980,7 +14003,7 @@
13980
14003
  })(exports.DataSource || (exports.DataSource = {}));
13981
14004
 
13982
14005
  // This is updated with the package.json version on build.
13983
- const VERSION = "4.8.1";
14006
+ const VERSION = "4.8.3";
13984
14007
 
13985
14008
  exports.VERSION = VERSION;
13986
14009
  exports.AbstractApi = AbstractApi;