@rsdk/common 5.11.0-next.0 → 5.11.0-next.10

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.
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Функция необходимая для объявления ошибки, при несоблюдении правила (если value = false, то будет выкинута ошибка)
3
+ * @param value - проверяемое значение
4
+ * @param error - текст или тип ошибки для вывода
5
+ */
6
+ export declare function assert(value: unknown, error?: string | Error): asserts value;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.assert = assert;
4
+ /**
5
+ * Функция необходимая для объявления ошибки, при несоблюдении правила (если value = false, то будет выкинута ошибка)
6
+ * @param value - проверяемое значение
7
+ * @param error - текст или тип ошибки для вывода
8
+ */
9
+ function assert(value, error) {
10
+ if (!value) {
11
+ if (error instanceof Error)
12
+ throw error;
13
+ throw new Error(error ?? 'Assertion failed');
14
+ }
15
+ }
16
+ //# sourceMappingURL=assert.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assert.js","sourceRoot":"","sources":["../../src/functions/assert.ts"],"names":[],"mappings":";;AAKA,wBAKC;AAVD;;;;GAIG;AACH,SAAgB,MAAM,CAAC,KAAc,EAAE,KAAsB;IAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,KAAK,YAAY,KAAK;YAAE,MAAM,KAAK,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,KAAK,IAAI,kBAAkB,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -3,3 +3,4 @@ export * from './obj-normalization';
3
3
  export * from './delay';
4
4
  export { isSerializable } from './serializable.type';
5
5
  export * from './omit-undefined';
6
+ export { assert } from './assert';
@@ -14,11 +14,13 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.isSerializable = void 0;
17
+ exports.assert = exports.isSerializable = void 0;
18
18
  __exportStar(require("./misc"), exports);
19
19
  __exportStar(require("./obj-normalization"), exports);
20
20
  __exportStar(require("./delay"), exports);
21
21
  var serializable_type_1 = require("./serializable.type");
22
22
  Object.defineProperty(exports, "isSerializable", { enumerable: true, get: function () { return serializable_type_1.isSerializable; } });
23
23
  __exportStar(require("./omit-undefined"), exports);
24
+ var assert_1 = require("./assert");
25
+ Object.defineProperty(exports, "assert", { enumerable: true, get: function () { return assert_1.assert; } });
24
26
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,sDAAoC;AACpC,0CAAwB;AACxB,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,mDAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/functions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,yCAAuB;AACvB,sDAAoC;AACpC,0CAAwB;AACxB,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,mDAAiC;AACjC,mCAAkC;AAAzB,gGAAA,MAAM,OAAA"}
@@ -31,19 +31,27 @@ const normalizer = () => {
31
31
  if (Buffer.isBuffer(xObject)) {
32
32
  return `[Buffer ${Buffer.byteLength(xObject)}]`;
33
33
  }
34
- // TODO: maybe serialize Map as record/dict
35
- if (xObject instanceof Map) {
36
- return `[Map ${xObject.size}]`;
37
- }
38
- // TODO: maybe serialize Set as Array
39
- if (xObject instanceof Set) {
40
- return `[Set ${xObject.size}]`;
41
- }
42
34
  // TODO: it may be worth checking the object for pojo and error, but we have DTOs...
43
35
  const newDepth = depth + 1;
44
36
  if (depth >= (options?.maxDepth ?? DEFAULT_MAX_DEPTH)) {
45
37
  return '[max nesting depth reached]';
46
38
  }
39
+ // TODO: refactor
40
+ // NOTE: In conversion of Map/Set to object/array, the newDepth variable is used
41
+ // so the implementation has been moved after the variable creation
42
+ // https://jira.rvision.pro/browse/CORE-5017
43
+ // Map
44
+ if (xObject instanceof Map) {
45
+ const obj = {};
46
+ for (const [key, value] of xObject.entries()) {
47
+ obj[String(key)] = normalize(value, options, newDepth);
48
+ }
49
+ return obj;
50
+ }
51
+ // Set
52
+ if (xObject instanceof Set) {
53
+ return Array.from(xObject).map((v) => normalize(v, options, newDepth));
54
+ }
47
55
  if (Array.isArray(xObject)) {
48
56
  return xObject.map((x) => normalize(x, options, newDepth));
49
57
  }
@@ -1 +1 @@
1
- {"version":3,"file":"obj-normalization.js","sourceRoot":"","sources":["../../src/functions/obj-normalization.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"obj-normalization.js","sourceRoot":"","sources":["../../src/functions/obj-normalization.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rsdk/common",
3
- "version": "5.11.0-next.0",
3
+ "version": "5.11.0-next.10",
4
4
  "description": "Useful common classes, functions and types",
5
5
  "license": "Apache License 2.0",
6
6
  "publishConfig": {
@@ -16,5 +16,5 @@
16
16
  "peerDependencies": {
17
17
  "rxjs": "^7.1.0"
18
18
  },
19
- "gitHead": "a2b52c124e8bbd8e79374ff26aabedc03f04df20"
19
+ "gitHead": "de767781fa92c9a3db87d8aa982aa682cb6375b6"
20
20
  }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Функция необходимая для объявления ошибки, при несоблюдении правила (если value = false, то будет выкинута ошибка)
3
+ * @param value - проверяемое значение
4
+ * @param error - текст или тип ошибки для вывода
5
+ */
6
+ export function assert(value: unknown, error?: string | Error): asserts value {
7
+ if (!value) {
8
+ if (error instanceof Error) throw error;
9
+ throw new Error(error ?? 'Assertion failed');
10
+ }
11
+ }
@@ -3,3 +3,4 @@ export * from './obj-normalization';
3
3
  export * from './delay';
4
4
  export { isSerializable } from './serializable.type';
5
5
  export * from './omit-undefined';
6
+ export { assert } from './assert';
@@ -53,16 +53,6 @@ export const normalizer = (): ((
53
53
  return `[Buffer ${Buffer.byteLength(xObject)}]`;
54
54
  }
55
55
 
56
- // TODO: maybe serialize Map as record/dict
57
- if (xObject instanceof Map) {
58
- return `[Map ${xObject.size}]`;
59
- }
60
-
61
- // TODO: maybe serialize Set as Array
62
- if (xObject instanceof Set) {
63
- return `[Set ${xObject.size}]`;
64
- }
65
-
66
56
  // TODO: it may be worth checking the object for pojo and error, but we have DTOs...
67
57
 
68
58
  const newDepth = depth + 1;
@@ -71,6 +61,25 @@ export const normalizer = (): ((
71
61
  return '[max nesting depth reached]';
72
62
  }
73
63
 
64
+ // TODO: refactor
65
+ // NOTE: In conversion of Map/Set to object/array, the newDepth variable is used
66
+ // so the implementation has been moved after the variable creation
67
+ // https://jira.rvision.pro/browse/CORE-5017
68
+ // Map
69
+ if (xObject instanceof Map) {
70
+ const obj: Record<string, unknown> = {};
71
+
72
+ for (const [key, value] of xObject.entries()) {
73
+ obj[String(key)] = normalize(value, options, newDepth);
74
+ }
75
+ return obj;
76
+ }
77
+
78
+ // Set
79
+ if (xObject instanceof Set) {
80
+ return Array.from(xObject).map((v) => normalize(v, options, newDepth));
81
+ }
82
+
74
83
  if (Array.isArray(xObject)) {
75
84
  return xObject.map((x) => normalize(x, options, newDepth));
76
85
  }