@or-sdk/contacts 3.2.2-beta.1800.0 → 3.2.2-beta.1803.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.
package/dist/cjs/utils.js CHANGED
@@ -10,15 +10,6 @@ var __assign = (this && this.__assign) || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
14
- if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
15
- if (ar || !(i in from)) {
16
- if (!ar) ar = Array.prototype.slice.call(from, 0, i);
17
- ar[i] = from[i];
18
- }
19
- }
20
- return to.concat(ar || Array.prototype.slice.call(from));
21
- };
22
13
  Object.defineProperty(exports, "__esModule", { value: true });
23
14
  exports.debouncePromise = exports.chunkArrByMaxSize = exports.getObjectSizeInBytes = exports.adaptListParams = void 0;
24
15
  var propertyToEscape = ['from', 'size', 'orderProperty', 'orderDirection'];
@@ -43,10 +34,32 @@ var chunkArrByMaxSize = function (arr, maxSize) {
43
34
  return [arr];
44
35
  }
45
36
  else if (arr.length === 1) {
46
- throw new Error('Single array element exceeds maximum size');
37
+ throw new Error('The first Single array element exceeds maximum size');
38
+ }
39
+ var chunks = [];
40
+ var chunkIdx = 0;
41
+ var chunkSize = 0;
42
+ var lastTakenItem = 0;
43
+ for (var idx = 0; idx < arr.length; idx++) {
44
+ var itemSize = (0, exports.getObjectSizeInBytes)(arr[idx]);
45
+ if (itemSize > maxSize) {
46
+ throw new Error("Single array element exceeds maximum size: size of the ".concat(idx, " element is ").concat(itemSize, " while maximum size is ").concat(maxSize));
47
+ }
48
+ if (chunkSize + itemSize < maxSize) {
49
+ chunkSize += itemSize;
50
+ }
51
+ else {
52
+ chunks[chunkIdx] = arr.slice(lastTakenItem, idx);
53
+ chunkIdx += 1;
54
+ chunkSize = itemSize;
55
+ lastTakenItem = idx;
56
+ }
57
+ }
58
+ var chunksLength = chunks.reduce(function (acc, chunk) { return acc + chunk.length; }, 0);
59
+ if (chunksLength < arr.length) {
60
+ chunks[chunkIdx + 1] = arr.slice(chunksLength);
47
61
  }
48
- var mid = Math.floor(arr.length / 2);
49
- return __spreadArray(__spreadArray([], (0, exports.chunkArrByMaxSize)(arr.slice(0, mid), maxSize), true), (0, exports.chunkArrByMaxSize)(arr.slice(mid), maxSize), true);
62
+ return chunks;
50
63
  };
51
64
  exports.chunkArrByMaxSize = chunkArrByMaxSize;
52
65
  function debouncePromise(caller, delay, reject) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,CAAU,CAAC;AAG/E,IAAM,eAAe,GAAG,UAC7B,MAAS;IAET,IAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAa,UAAC,GAAG,EAAE,CAAC;QAC9D,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAoC,CAAC,KAAK,CAAC,CAAC,EAAE;YACxE,GAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SAC7B;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAgB,CAAC,CAAC;IAErB,+CACK,SAAS,GACT,CACD,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,cAAc,CAAC;QAC/C,EAAE,KAAK,EAAE,UAAG,MAAM,CAAC,aAAa,cAAI,MAAM,CAAC,cAAc,CAAE,EAAE,CAC9D,GACE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,GACtC,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EACzC;AACJ,CAAC,CAAC;AAnBW,QAAA,eAAe,mBAmB1B;AAEK,IAAM,oBAAoB,GAAG,UAAI,GAAM,IAAa,OAAA,MAAM;KAC9D,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;KAC7C,MAAM,EAFkD,CAElD,CAAC;AAFG,QAAA,oBAAoB,wBAEvB;AAEH,IAAM,iBAAiB,GAAG,UAAI,GAAQ,EAAE,OAAe;IAC5D,IAAM,IAAI,GAAG,IAAA,4BAAoB,EAAC,GAAG,CAAC,CAAC;IAEvC,IAAI,IAAI,GAAG,OAAO,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,CAAC;KACd;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;KAC9D;IACD,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC,uCACK,IAAA,yBAAiB,EAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,SAC7C,IAAA,yBAAiB,EAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,QAC7C;AACJ,CAAC,CAAC;AAbW,QAAA,iBAAiB,qBAa5B;AAEF,SAAgB,eAAe,CAC7B,MAAwB,EACxB,KAAa,EACb,MAAqD;IAErD,IAAI,OAAO,GAA0B,IAAI,CAAC;IAE1C,OAAO,IAAI,OAAO,CAAI,UAAC,GAAG;QACxB,IAAI,OAAO,EAAE;YACX,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB;QACD,OAAO,GAAG,UAAU,CAAC,cAAM,OAAA,MAAM,EAAE,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,GAAG,CAAC,CAAC,CAAC,EAAN,CAAM,CAAC,CAAC,KAAK,CAAC,UAAC,GAAG,IAAK,OAAA,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,EAArB,CAAqB,CAAC,EAAlE,CAAkE,EAAE,KAAK,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;AACL,CAAC;AAbD,0CAaC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
package/dist/esm/utils.js CHANGED
@@ -18,13 +18,32 @@ export const chunkArrByMaxSize = (arr, maxSize) => {
18
18
  return [arr];
19
19
  }
20
20
  else if (arr.length === 1) {
21
- throw new Error('Single array element exceeds maximum size');
21
+ throw new Error('The first Single array element exceeds maximum size');
22
22
  }
23
- const mid = Math.floor(arr.length / 2);
24
- return [
25
- ...chunkArrByMaxSize(arr.slice(0, mid), maxSize),
26
- ...chunkArrByMaxSize(arr.slice(mid), maxSize),
27
- ];
23
+ const chunks = [];
24
+ let chunkIdx = 0;
25
+ let chunkSize = 0;
26
+ let lastTakenItem = 0;
27
+ for (let idx = 0; idx < arr.length; idx++) {
28
+ const itemSize = getObjectSizeInBytes(arr[idx]);
29
+ if (itemSize > maxSize) {
30
+ throw new Error(`Single array element exceeds maximum size: size of the ${idx} element is ${itemSize} while maximum size is ${maxSize}`);
31
+ }
32
+ if (chunkSize + itemSize < maxSize) {
33
+ chunkSize += itemSize;
34
+ }
35
+ else {
36
+ chunks[chunkIdx] = arr.slice(lastTakenItem, idx);
37
+ chunkIdx += 1;
38
+ chunkSize = itemSize;
39
+ lastTakenItem = idx;
40
+ }
41
+ }
42
+ const chunksLength = chunks.reduce((acc, chunk) => acc + chunk.length, 0);
43
+ if (chunksLength < arr.length) {
44
+ chunks[chunkIdx + 1] = arr.slice(chunksLength);
45
+ }
46
+ return chunks;
28
47
  };
29
48
  export function debouncePromise(caller, delay, reject) {
30
49
  let timeout = null;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAGA,MAAM,gBAAgB,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,gBAAgB,CAAU,CAAC;AAGtF,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,MAAS,EAC0C,EAAE;IACrD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAa,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;QAClE,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAoC,CAAC,KAAK,CAAC,CAAC,EAAE;YACxE,GAAW,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;SAC7B;QACD,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAgB,CAAC,CAAC;IAErB,mEACK,SAAS,GACT,CACD,CAAC,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,cAAc,CAAC;QAC/C,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC,aAAa,IAAI,MAAM,CAAC,cAAc,EAAE,EAAE,CAC9D,GACE,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,GACtC,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,EACzC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAI,GAAM,EAAU,EAAE,CAAC,MAAM;KAC9D,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;KAC7C,MAAM,CAAC;AAEV,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,GAAQ,EAAE,OAAe,EAAS,EAAE;IACvE,MAAM,IAAI,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAEvC,IAAI,IAAI,GAAG,OAAO,EAAE;QAClB,OAAO,CAAC,GAAG,CAAC,CAAC;KACd;SAAM,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;KAC9D;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACvC,OAAO;QACL,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC;QAChD,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;KAC9C,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,UAAU,eAAe,CAC7B,MAAwB,EACxB,KAAa,EACb,MAAqD;IAErD,IAAI,OAAO,GAA0B,IAAI,CAAC;IAE1C,OAAO,IAAI,OAAO,CAAI,CAAC,GAAG,EAAE,EAAE;QAC5B,IAAI,OAAO,EAAE;YACX,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB;QACD,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;IACxG,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,QAAA,MAAM,gBAAgB,8DAA+D,CAAC;AACtF,aAAK,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;AAE3D,eAAO,MAAM,eAAe;;;mEAmB3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,iBAAgB,MAExC,CAAC;AAEV,eAAO,MAAM,iBAAiB,yBAA0B,MAAM,UAa7D,CAAC;AAEF,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,GACpD,OAAO,CAAC,CAAC,CAAC,CASZ"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C,QAAA,MAAM,gBAAgB,8DAA+D,CAAC;AACtF,aAAK,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;AAE3D,eAAO,MAAM,eAAe;;;mEAmB3B,CAAC;AAEF,eAAO,MAAM,oBAAoB,iBAAgB,MAExC,CAAC;AAEV,eAAO,MAAM,iBAAiB,yBAA0B,MAAM,UAsC7D,CAAC;AAEF,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,KAAK,IAAI,GACpD,OAAO,CAAC,CAAC,CAAC,CASZ"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "3.2.2-beta.1800.0",
2
+ "version": "3.2.2-beta.1803.0",
3
3
  "name": "@or-sdk/contacts",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@onereach/types-contacts-api": "4.7.2-beta.2253.0",
28
- "@or-sdk/base": "^0.28.3",
28
+ "@or-sdk/base": "^0.28.4-beta.1803.0",
29
29
  "uuid": "^8.3.2"
30
30
  }
31
31
  }
package/src/utils.ts CHANGED
@@ -35,13 +35,38 @@ export const chunkArrByMaxSize = <T>(arr: T[], maxSize: number): T[][] => {
35
35
  if (size < maxSize) {
36
36
  return [arr];
37
37
  } else if (arr.length === 1) {
38
- throw new Error('Single array element exceeds maximum size');
38
+ throw new Error('The first Single array element exceeds maximum size');
39
39
  }
40
- const mid = Math.floor(arr.length / 2);
41
- return [
42
- ...chunkArrByMaxSize(arr.slice(0, mid), maxSize),
43
- ...chunkArrByMaxSize(arr.slice(mid), maxSize),
44
- ];
40
+
41
+ const chunks = [];
42
+ let chunkIdx = 0;
43
+ let chunkSize = 0;
44
+ let lastTakenItem = 0;
45
+
46
+ for (let idx = 0;idx < arr.length;idx ++) {
47
+ const itemSize = getObjectSizeInBytes(arr[idx]);
48
+ if (itemSize > maxSize) {
49
+ throw new Error(`Single array element exceeds maximum size: size of the ${
50
+ idx
51
+ } element is ${itemSize} while maximum size is ${maxSize}`);
52
+ }
53
+
54
+ if (chunkSize + itemSize < maxSize) {
55
+ chunkSize += itemSize;
56
+ } else {
57
+ chunks[chunkIdx] = arr.slice(lastTakenItem, idx);
58
+ chunkIdx += 1;
59
+ chunkSize = itemSize;
60
+ lastTakenItem = idx;
61
+ }
62
+ }
63
+
64
+ const chunksLength = chunks.reduce((acc, chunk) => acc + chunk.length, 0);
65
+ if (chunksLength < arr.length) {
66
+ chunks[chunkIdx + 1] = arr.slice(chunksLength);
67
+ }
68
+
69
+ return chunks;
45
70
  };
46
71
 
47
72
  export function debouncePromise<T>(