asn1-ts 7.1.2 → 8.0.1

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.
Files changed (45) hide show
  1. package/dist/node/asn1.d.ts +7 -40
  2. package/dist/node/asn1.d.ts.map +1 -1
  3. package/dist/node/asn1.js +3 -115
  4. package/dist/node/asn1.js.map +1 -1
  5. package/dist/node/codecs/ber.d.ts +6 -1
  6. package/dist/node/codecs/ber.d.ts.map +1 -1
  7. package/dist/node/codecs/ber.js +38 -9
  8. package/dist/node/codecs/ber.js.map +1 -1
  9. package/dist/node/codecs/cer.d.ts +6 -1
  10. package/dist/node/codecs/cer.d.ts.map +1 -1
  11. package/dist/node/codecs/cer.js +34 -8
  12. package/dist/node/codecs/cer.js.map +1 -1
  13. package/dist/node/codecs/der.d.ts +6 -1
  14. package/dist/node/codecs/der.d.ts.map +1 -1
  15. package/dist/node/codecs/der.js +31 -7
  16. package/dist/node/codecs/der.js.map +1 -1
  17. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.d.ts.map +1 -1
  18. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js +11 -11
  19. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js.map +1 -1
  20. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.d.ts.map +1 -1
  21. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js +13 -10
  22. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js.map +1 -1
  23. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.d.ts.map +1 -1
  24. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js +26 -13
  25. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js.map +1 -1
  26. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.d.ts.map +1 -1
  27. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js +22 -9
  28. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js.map +1 -1
  29. package/dist/node/types/ObjectIdentifier.d.ts +1 -1
  30. package/dist/node/types/ObjectIdentifier.d.ts.map +1 -1
  31. package/dist/node/types/ObjectIdentifier.js +21 -19
  32. package/dist/node/types/ObjectIdentifier.js.map +1 -1
  33. package/dist/node/utils/decodeBase128.d.ts +2 -1
  34. package/dist/node/utils/decodeBase128.d.ts.map +1 -1
  35. package/dist/node/utils/decodeBase128.js +22 -3
  36. package/dist/node/utils/decodeBase128.js.map +1 -1
  37. package/dist/node/utils/index.d.ts +0 -3
  38. package/dist/node/utils/index.d.ts.map +1 -1
  39. package/dist/node/utils/index.js +1 -7
  40. package/dist/node/utils/index.js.map +1 -1
  41. package/dist/node/utils/splitBytesByContinuationBit.d.ts +2 -1
  42. package/dist/node/utils/splitBytesByContinuationBit.d.ts.map +1 -1
  43. package/dist/node/utils/splitBytesByContinuationBit.js +2 -1
  44. package/dist/node/utils/splitBytesByContinuationBit.js.map +1 -1
  45. package/package.json +1 -2
@@ -1,15 +1,28 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const tslib_1 = require("tslib");
4
- const encodeUnsignedBigEndianInteger_1 = tslib_1.__importDefault(require("../../../utils/encodeUnsignedBigEndianInteger"));
5
- const encodeBase128_1 = tslib_1.__importDefault(require("../../../utils/encodeBase128"));
6
3
  function encodeRelativeObjectIdentifier(value) {
7
- return Buffer.concat(value
8
- .map(encodeUnsignedBigEndianInteger_1.default)
9
- .map(encodeBase128_1.default)
10
- .map((arc) => ((arc[0] === 0x80)
11
- ? arc.subarray(1)
12
- : arc)));
4
+ const ret = [];
5
+ for (const arc of value) {
6
+ if (arc < 128) {
7
+ ret.push(arc);
8
+ continue;
9
+ }
10
+ let l = 0;
11
+ let i = arc;
12
+ while (i > 0) {
13
+ l++;
14
+ i >>>= 7;
15
+ }
16
+ for (let j = l - 1; j >= 0; j--) {
17
+ let o = (arc >>> (j * 7));
18
+ o &= 0x7f;
19
+ if (j !== 0) {
20
+ o |= 0x80;
21
+ }
22
+ ret.push(o);
23
+ }
24
+ }
25
+ return Buffer.from(ret);
13
26
  }
14
27
  exports.default = encodeRelativeObjectIdentifier;
15
28
  //# sourceMappingURL=encodeRelativeObjectIdentifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encodeRelativeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeRelativeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,2HAA2F;AAC3F,yFAAyD;AAGzD,SACS,8BAA8B,CAAE,KAAmB;IACxD,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK;SACrB,GAAG,CAAC,wCAA8B,CAAC;SACnC,GAAG,CAAC,uBAAa,CAAC;SAClB,GAAG,CAAC,CAAC,GAAe,EAAc,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QACpD,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjB,CAAC,CAAC,GAAG,CAAC,CAAC,CACd,CAAC;AACN,CAAC;AATD,iDASC"}
1
+ {"version":3,"file":"encodeRelativeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeRelativeObjectIdentifier.ts"],"names":[],"mappings":";;AAEA,SACS,8BAA8B,CAAE,KAAmB;IACxD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACrB,IAAI,GAAG,GAAG,GAAG,EAAE;YACX,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACd,SAAS;SACZ;QACD,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,CAAC,GAAG,GAAG,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,EAAE;YACV,CAAC,EAAE,CAAC;YACJ,CAAC,MAAM,CAAC,CAAC;SACZ;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC7B,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC,IAAI,IAAI,CAAC;YACV,IAAI,CAAC,KAAK,CAAC,EAAE;gBACT,CAAC,IAAI,IAAI,CAAC;aACb;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACf;KACJ;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC5B,CAAC;AAxBD,iDAwBC"}
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  export default class ObjectIdentifier {
3
- readonly _nodes: number[];
3
+ private _nodes;
4
4
  constructor(nodes: number[], prefix?: ObjectIdentifier | number);
5
5
  get nodes(): number[];
6
6
  get dotDelimitedNotation(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../source/types/ObjectIdentifier.ts"],"names":[],"mappings":";AAGA,MAAM,CAAC,OAAO,OACR,gBAAgB;IAClB,SAAgB,MAAM,EAAE,MAAM,EAAE,CAAC;gBAEpB,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM;IAyChE,IAAI,KAAK,IAAK,MAAM,EAAE,CAErB;IAED,IAAI,oBAAoB,IAAK,MAAM,CAElC;IAED,IAAI,YAAY,IAAK,MAAM,CAE1B;IAEM,QAAQ,IAAK,MAAM;IAInB,MAAM,IAAK,MAAM;IAIjB,OAAO,IAAK,MAAM;WAIX,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB;WAI1C,SAAS,CAAE,KAAK,EAAE,UAAU,GAAG,gBAAgB;WAmB/C,OAAO,CAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,GAAG,OAAO;IAelE,SAAS,CAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO;CAGtD"}
1
+ {"version":3,"file":"ObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../source/types/ObjectIdentifier.ts"],"names":[],"mappings":";AAKA,MAAM,CAAC,OAAO,OACR,gBAAgB;IAClB,OAAO,CAAC,MAAM,CAAc;gBAEf,KAAK,EAAE,MAAM,EAAE,EAAE,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM;IAqBhE,IAAI,KAAK,IAAK,MAAM,EAAE,CAErB;IAED,IAAI,oBAAoB,IAAK,MAAM,CAElC;IAED,IAAI,YAAY,IAAK,MAAM,CAE1B;IAEM,QAAQ,IAAK,MAAM;IAInB,MAAM,IAAK,MAAM;IAIjB,OAAO,IAAK,MAAM;WAIX,UAAU,CAAE,GAAG,EAAE,MAAM,GAAG,gBAAgB;WAuB1C,SAAS,CAAE,KAAK,EAAE,UAAU,GAAG,gBAAgB;WAmB/C,OAAO,CAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,GAAG,OAAO;IAelE,SAAS,CAAE,KAAK,EAAE,gBAAgB,GAAG,OAAO;CAGtD"}
@@ -3,45 +3,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const decodeObjectIdentifier_1 = tslib_1.__importDefault(require("../codecs/x690/decoders/decodeObjectIdentifier"));
5
5
  const encodeObjectIdentifier_1 = tslib_1.__importDefault(require("../codecs/x690/encoders/encodeObjectIdentifier"));
6
+ const PERIOD = ".".charCodeAt(0);
6
7
  class ObjectIdentifier {
7
8
  constructor(nodes, prefix) {
8
9
  const _nodes = prefix
9
10
  ? typeof prefix === "number"
10
11
  ? [prefix, ...nodes]
11
- : [...prefix._nodes, ...nodes]
12
+ : [...prefix.nodes, ...nodes]
12
13
  : nodes.slice(0);
13
14
  if (_nodes.length < 2) {
14
15
  throw new Error("Cannot construct an OID with less than two nodes!");
15
16
  }
16
- if (_nodes.length >= 1 && !(_nodes[0] in [0, 1, 2])) {
17
+ if ((_nodes[0] < 0) || (_nodes[0] > 2)) {
17
18
  throw new Error("OIDs first node must be 0, 1, or 2!");
18
19
  }
19
- if (!_nodes.every((node) => Number.isSafeInteger(node))) {
20
- throw new Error("OID contained a non-safe integer value.");
21
- }
22
- if (((_nodes[0] < 2) && _nodes[1] > 39)
23
- || (_nodes[0] === 2 && _nodes[1] > 175)) {
20
+ if (((_nodes[0] < 2) && (_nodes[1] > 39)) || (_nodes[1] > 175)) {
24
21
  throw new Error("OID Node #2 cannot exceed 39 if node #1 is 0 or 1, and 175 "
25
22
  + `if node #1 is 2. Received these nodes: ${_nodes}.`);
26
23
  }
27
- for (const node of _nodes) {
28
- if (node < 0) {
29
- throw new Error("OID node numbers cannot be negative!");
30
- }
31
- if (node > Number.MAX_SAFE_INTEGER) {
32
- throw new Error("OID number was too big!");
33
- }
34
- }
35
- this._nodes = _nodes;
24
+ this._nodes = new Uint32Array(_nodes);
36
25
  }
37
26
  get nodes() {
38
- return this._nodes.slice(0);
27
+ return Array.from(this._nodes);
39
28
  }
40
29
  get dotDelimitedNotation() {
41
30
  return this._nodes.join(".");
42
31
  }
43
32
  get asn1Notation() {
44
- return `{ ${this._nodes.map((node) => node.toString()).join(" ")} }`;
33
+ return `{ ${Array.from(this._nodes).map((node) => node.toString()).join(" ")} }`;
45
34
  }
46
35
  toString() {
47
36
  return this.dotDelimitedNotation;
@@ -53,7 +42,20 @@ class ObjectIdentifier {
53
42
  return (0, encodeObjectIdentifier_1.default)(this);
54
43
  }
55
44
  static fromString(str) {
56
- return new ObjectIdentifier(str.split(".").map((arc) => Number.parseInt(arc, 10)));
45
+ const arcs = [];
46
+ let last = 0;
47
+ let i = 0;
48
+ while (i < str.length) {
49
+ if (str.charCodeAt(i) === PERIOD) {
50
+ const arc = Number.parseInt(str.slice(last, i), 10);
51
+ arcs.push(arc);
52
+ last = i + 1;
53
+ }
54
+ i++;
55
+ }
56
+ const arc = Number.parseInt(str.slice(last, i), 10);
57
+ arcs.push(arc);
58
+ return new ObjectIdentifier(arcs);
57
59
  }
58
60
  static fromBytes(bytes) {
59
61
  return (0, decodeObjectIdentifier_1.default)(bytes);
@@ -1 +1 @@
1
- {"version":3,"file":"ObjectIdentifier.js","sourceRoot":"","sources":["../../../source/types/ObjectIdentifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ObjectIdentifier.js","sourceRoot":"","sources":["../../../source/types/ObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,oHAAoF;AACpF,oHAAoF;AAEpF,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;AAEjC,MACM,gBAAgB;IAGlB,YAAa,KAAe,EAAE,MAAkC;QAC5D,MAAM,MAAM,GAAa,MAAM;YAC3B,CAAC,CAAC,OAAO,MAAM,KAAK,QAAQ;gBACxB,CAAC,CAAC,CAAE,MAAM,EAAE,GAAG,KAAK,CAAE;gBACtB,CAAC,CAAC,CAAE,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,KAAK,CAAE;YACnC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;SACxE;QACD,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SAC1D;QACD,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE;YAC5D,MAAM,IAAI,KAAK,CACX,6DAA6D;kBAC3D,0CAA0C,MAAM,GAAG,CACxD,CAAC;SACL;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,KAAK;QACL,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,oBAAoB;QACpB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,YAAY;QACZ,OAAO,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC;IACrF,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAEM,MAAM;QACT,OAAO,IAAI,CAAC,oBAAoB,CAAC;IACrC,CAAC;IAEM,OAAO;QACV,OAAO,IAAA,gCAAsB,EAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,UAAU,CAAE,GAAW;QAOjC,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE;YACnB,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE;gBAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACf,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;aAChB;YACD,CAAC,EAAE,CAAC;SACP;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM,CAAC,SAAS,CAAE,KAAiB;QACtC,OAAO,IAAA,gCAAsB,EAAC,KAAK,CAAC,CAAC;IACzC,CAAC;IAiBM,MAAM,CAAC,OAAO,CAAE,CAAmB,EAAE,CAAmB;QAC3D,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE;YACrC,OAAO,KAAK,CAAC;SAChB;QACD,MAAM,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,EAAE;YACX,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBAC7B,OAAO,KAAK,CAAC;aAChB;YACD,CAAC,EAAE,CAAC;SACP;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,SAAS,CAAE,KAAuB;QACrC,OAAO,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;CACJ;AA7GD,mCA6GC"}
@@ -1,2 +1,3 @@
1
- export default function decodeBase128(value: Uint8Array): Uint8Array;
1
+ /// <reference types="node" />
2
+ export default function decodeBase128(value: Buffer): number;
2
3
  //# sourceMappingURL=decodeBase128.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decodeBase128.d.ts","sourceRoot":"","sources":["../../../source/utils/decodeBase128.ts"],"names":[],"mappings":"AAIA,MAAM,CAAC,OAAO,UACL,aAAa,CAAE,KAAK,EAAE,UAAU,GAAG,UAAU,CAerD"}
1
+ {"version":3,"file":"decodeBase128.d.ts","sourceRoot":"","sources":["../../../source/utils/decodeBase128.ts"],"names":[],"mappings":";AAIA,MAAM,CAAC,OAAO,UACL,aAAa,CAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAiC7C"}
@@ -5,8 +5,19 @@ const base256Length_1 = tslib_1.__importDefault(require("./base256Length"));
5
5
  const getBitFromBase128_1 = tslib_1.__importDefault(require("./getBitFromBase128"));
6
6
  const setBitInBase256_1 = tslib_1.__importDefault(require("./setBitInBase256"));
7
7
  function decodeBase128(value) {
8
- if (value.length === 1 && value[0] < 128) {
9
- return new Uint8Array([value[0]]);
8
+ if (value.length === 1) {
9
+ return value[0] & 127;
10
+ }
11
+ else if (value.length === 2) {
12
+ const b1 = (value[0] & 127) >>> 1;
13
+ const b2 = (value[1] & 127) | ((value[0] & 1) << 7);
14
+ return Buffer.from([b1, b2]).readUint16BE();
15
+ }
16
+ else if (value.length === 3) {
17
+ const b1 = (value[0] & 127) >>> 1;
18
+ const b2 = (value[1] & 127) | ((value[0] & 1) << 7);
19
+ const b3 = (value[1] & 127) | ((value[0] & 1) << 7);
20
+ return Buffer.from([0, b1, b2, b3]).readUint32BE();
10
21
  }
11
22
  const decodedBytes = new Uint8Array((0, base256Length_1.default)(value.length));
12
23
  for (let byte = 0; byte < value.length; byte++) {
@@ -18,7 +29,15 @@ function decodeBase128(value) {
18
29
  }
19
30
  }
20
31
  }
21
- return new Uint8Array(decodedBytes);
32
+ if (decodedBytes.length === 3) {
33
+ const buf = Buffer.alloc(4);
34
+ buf.set(decodedBytes, 1);
35
+ return buf.readUint32BE();
36
+ }
37
+ if (decodedBytes[0] === 0x80) {
38
+ return Buffer.from(decodedBytes.slice(1)).readUint32BE();
39
+ }
40
+ return Buffer.from(decodedBytes).readUint32BE();
22
41
  }
23
42
  exports.default = decodeBase128;
24
43
  //# sourceMappingURL=decodeBase128.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decodeBase128.js","sourceRoot":"","sources":["../../../source/utils/decodeBase128.ts"],"names":[],"mappings":";;;AAAA,4EAA4C;AAC5C,oFAAoD;AACpD,gFAAgD;AAEhD,SACS,aAAa,CAAE,KAAiB;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE;QACtC,OAAO,IAAI,UAAU,CAAC,CAAE,KAAK,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;KACvC;IACD,MAAM,YAAY,GAAe,IAAI,UAAU,CAAC,IAAA,uBAAa,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7E,KAAK,IAAI,IAAI,GAAW,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACpD,KAAK,IAAI,GAAG,GAAW,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;YACtC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAA,2BAAiB,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpD,IAAI,QAAQ,EAAE;gBACV,IAAA,yBAAe,EAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aACjD;SACJ;KACJ;IACD,OAAO,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC;AACxC,CAAC;AAhBD,gCAgBC"}
1
+ {"version":3,"file":"decodeBase128.js","sourceRoot":"","sources":["../../../source/utils/decodeBase128.ts"],"names":[],"mappings":";;;AAAA,4EAA4C;AAC5C,oFAAoD;AACpD,gFAAgD;AAEhD,SACS,aAAa,CAAE,KAAa;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC;KACjC;SAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACtE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAE,EAAE,EAAE,EAAE,CAAE,CAAC,CAAC,YAAY,EAAE,CAAC;KACjD;SAAM,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAW,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACtE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAE,CAAC,CAAC,YAAY,EAAE,CAAC;KACxD;IAED,MAAM,YAAY,GAAe,IAAI,UAAU,CAAC,IAAA,uBAAa,EAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC7E,KAAK,IAAI,IAAI,GAAW,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACpD,KAAK,IAAI,GAAG,GAAW,CAAC,EAAE,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE;YACtC,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAA,2BAAiB,EAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACpD,IAAI,QAAQ,EAAE;gBACV,IAAA,yBAAe,EAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;aACjD;SACJ;KACJ;IACD,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC3B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;QACzB,OAAO,GAAG,CAAC,YAAY,EAAE,CAAC;KAC7B;IACD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;QAC1B,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;KAC5D;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,YAAY,EAAE,CAAC;AACpD,CAAC;AAlCD,gCAkCC"}
@@ -1,13 +1,10 @@
1
1
  export { default as base128Length } from "./base128Length";
2
- export { default as base256Length } from "./base256Length";
3
- export { default as decodeBase128 } from "./decodeBase128";
4
2
  export { default as decodeIEEE754DoublePrecisionFloat } from "./decodeIEEE754DoublePrecisionFloat";
5
3
  export { default as decodeIEEE754SinglePrecisionFloat } from "./decodeIEEE754SinglePrecisionFloat";
6
4
  export { default as decodeSignedBigEndianInteger } from "./decodeSignedBigEndianInteger";
7
5
  export { default as decodeUnsignedBigEndianInteger } from "./decodeUnsignedBigEndianInteger";
8
6
  export { default as decodeX690RealNumber } from "./decodeX690RealNumber";
9
7
  export { default as dissectFloat } from "./dissectFloat";
10
- export { default as encodeBase128 } from "./encodeBase128";
11
8
  export { default as encodeIEEE754DoublePrecisionFloat } from "./encodeIEEE754DoublePrecisionFloat";
12
9
  export { default as encodeIEEE754SinglePrecisionFloat } from "./encodeIEEE754SinglePrecisionFloat";
13
10
  export { default as encodeSignedBigEndianInteger } from "./encodeSignedBigEndianInteger";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../source/utils/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,iCAAiC,EAAE,MAAM,qCAAqC,CAAC;AACnG,OAAO,EAAE,OAAO,IAAI,4BAA4B,EAAE,MAAM,gCAAgC,CAAC;AACzF,OAAO,EAAE,OAAO,IAAI,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAC7F,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AACrF,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,OAAO,IAAI,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -3,13 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.unpackBits = exports.trimLeadingPaddingBytes = exports.setBitInBase256 = exports.setBitInBase128 = exports.packBits = exports.isUniquelyTagged = exports.isInCanonicalOrder = exports.getBitFromBase256 = exports.getBitFromBase128 = exports.encodeX690BinaryRealNumber = exports.encodeX690Base10RealNumber = exports.encodeUnsignedBigEndianInteger = exports.encodeSignedBigEndianInteger = exports.encodeIEEE754SinglePrecisionFloat = exports.encodeIEEE754DoublePrecisionFloat = exports.encodeBase128 = exports.dissectFloat = exports.decodeX690RealNumber = exports.decodeUnsignedBigEndianInteger = exports.decodeSignedBigEndianInteger = exports.decodeIEEE754SinglePrecisionFloat = exports.decodeIEEE754DoublePrecisionFloat = exports.decodeBase128 = exports.base256Length = exports.base128Length = void 0;
6
+ exports.unpackBits = exports.trimLeadingPaddingBytes = exports.setBitInBase256 = exports.setBitInBase128 = exports.packBits = exports.isUniquelyTagged = exports.isInCanonicalOrder = exports.getBitFromBase256 = exports.getBitFromBase128 = exports.encodeX690BinaryRealNumber = exports.encodeX690Base10RealNumber = exports.encodeUnsignedBigEndianInteger = exports.encodeSignedBigEndianInteger = exports.encodeIEEE754SinglePrecisionFloat = exports.encodeIEEE754DoublePrecisionFloat = exports.dissectFloat = exports.decodeX690RealNumber = exports.decodeUnsignedBigEndianInteger = exports.decodeSignedBigEndianInteger = exports.decodeIEEE754SinglePrecisionFloat = exports.decodeIEEE754DoublePrecisionFloat = exports.base128Length = void 0;
7
7
  var base128Length_1 = require("./base128Length");
8
8
  Object.defineProperty(exports, "base128Length", { enumerable: true, get: function () { return __importDefault(base128Length_1).default; } });
9
- var base256Length_1 = require("./base256Length");
10
- Object.defineProperty(exports, "base256Length", { enumerable: true, get: function () { return __importDefault(base256Length_1).default; } });
11
- var decodeBase128_1 = require("./decodeBase128");
12
- Object.defineProperty(exports, "decodeBase128", { enumerable: true, get: function () { return __importDefault(decodeBase128_1).default; } });
13
9
  var decodeIEEE754DoublePrecisionFloat_1 = require("./decodeIEEE754DoublePrecisionFloat");
14
10
  Object.defineProperty(exports, "decodeIEEE754DoublePrecisionFloat", { enumerable: true, get: function () { return __importDefault(decodeIEEE754DoublePrecisionFloat_1).default; } });
15
11
  var decodeIEEE754SinglePrecisionFloat_1 = require("./decodeIEEE754SinglePrecisionFloat");
@@ -22,8 +18,6 @@ var decodeX690RealNumber_1 = require("./decodeX690RealNumber");
22
18
  Object.defineProperty(exports, "decodeX690RealNumber", { enumerable: true, get: function () { return __importDefault(decodeX690RealNumber_1).default; } });
23
19
  var dissectFloat_1 = require("./dissectFloat");
24
20
  Object.defineProperty(exports, "dissectFloat", { enumerable: true, get: function () { return __importDefault(dissectFloat_1).default; } });
25
- var encodeBase128_1 = require("./encodeBase128");
26
- Object.defineProperty(exports, "encodeBase128", { enumerable: true, get: function () { return __importDefault(encodeBase128_1).default; } });
27
21
  var encodeIEEE754DoublePrecisionFloat_1 = require("./encodeIEEE754DoublePrecisionFloat");
28
22
  Object.defineProperty(exports, "encodeIEEE754DoublePrecisionFloat", { enumerable: true, get: function () { return __importDefault(encodeIEEE754DoublePrecisionFloat_1).default; } });
29
23
  var encodeIEEE754SinglePrecisionFloat_1 = require("./encodeIEEE754SinglePrecisionFloat");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/utils/index.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,mFAA6F;AAApF,iKAAA,OAAO,OAAkC;AAClD,+DAAyE;AAAhE,6IAAA,OAAO,OAAwB;AACxC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,mFAA6F;AAApF,iKAAA,OAAO,OAAkC;AAClD,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,2DAAqE;AAA5D,yIAAA,OAAO,OAAsB;AACtC,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qEAA+E;AAAtE,mJAAA,OAAO,OAA2B;AAC3C,2CAAqD;AAA5C,yHAAA,OAAO,OAAc"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../source/utils/index.ts"],"names":[],"mappings":";;;;;;AAAA,iDAA2D;AAAlD,+HAAA,OAAO,OAAiB;AACjC,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,mFAA6F;AAApF,iKAAA,OAAO,OAAkC;AAClD,+DAAyE;AAAhE,6IAAA,OAAO,OAAwB;AACxC,+CAAyD;AAAhD,6HAAA,OAAO,OAAgB;AAChC,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,yFAAmG;AAA1F,uKAAA,OAAO,OAAqC;AACrD,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,mFAA6F;AAApF,iKAAA,OAAO,OAAkC;AAClD,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,yDAAmE;AAA1D,uIAAA,OAAO,OAAqB;AACrC,2DAAqE;AAA5D,yIAAA,OAAO,OAAsB;AACtC,uDAAiE;AAAxD,qIAAA,OAAO,OAAoB;AACpC,uCAAiD;AAAxC,qHAAA,OAAO,OAAY;AAC5B,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qDAA+D;AAAtD,mIAAA,OAAO,OAAmB;AACnC,qEAA+E;AAAtE,mJAAA,OAAO,OAA2B;AAC3C,2CAAqD;AAA5C,yHAAA,OAAO,OAAc"}
@@ -1,2 +1,3 @@
1
- export default function splitBytesByContinuationBit(value: Uint8Array): IterableIterator<Uint8Array>;
1
+ /// <reference types="node" />
2
+ export default function splitBytesByContinuationBit(value: Uint8Array): IterableIterator<Buffer>;
2
3
  //# sourceMappingURL=splitBytesByContinuationBit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"splitBytesByContinuationBit.d.ts","sourceRoot":"","sources":["../../../source/utils/splitBytesByContinuationBit.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UACJ,2BAA2B,CAAE,KAAK,EAAE,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC,CAStF"}
1
+ {"version":3,"file":"splitBytesByContinuationBit.d.ts","sourceRoot":"","sources":["../../../source/utils/splitBytesByContinuationBit.ts"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UACJ,2BAA2B,CAAE,KAAK,EAAE,UAAU,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAYlF"}
@@ -4,7 +4,8 @@ function* splitBytesByContinuationBit(value) {
4
4
  let lastChunkStartIndex = 0;
5
5
  for (let i = 0; i < value.length; i++) {
6
6
  if (!(value[i] & 0b10000000)) {
7
- yield value.subarray(lastChunkStartIndex, (i + 1));
7
+ const buf = Buffer.from(value.buffer, value.byteOffset + lastChunkStartIndex, (i + 1) - lastChunkStartIndex);
8
+ yield buf;
8
9
  lastChunkStartIndex = (i + 1);
9
10
  }
10
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"splitBytesByContinuationBit.js","sourceRoot":"","sources":["../../../source/utils/splitBytesByContinuationBit.ts"],"names":[],"mappings":";;AAAA,QACS,CAAC,CAAA,2BAA2B,CAAE,KAAiB;IACpD,IAAI,mBAAmB,GAAW,CAAC,CAAC;IACpC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE;YAC1B,MAAM,KAAK,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACnD,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACjC;KACJ;IACD,OAAO;AACX,CAAC;AAVD,8CAUC"}
1
+ {"version":3,"file":"splitBytesByContinuationBit.js","sourceRoot":"","sources":["../../../source/utils/splitBytesByContinuationBit.ts"],"names":[],"mappings":";;AAAA,QACS,CAAC,CAAA,2BAA2B,CAAE,KAAiB;IACpD,IAAI,mBAAmB,GAAW,CAAC,CAAC;IACpC,KAAK,IAAI,CAAC,GAAW,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE;YAE1B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CACnB,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,GAAG,mBAAmB,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,mBAAmB,CAAC,CAAC;YACzF,MAAM,GAAG,CAAC;YACV,mBAAmB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;SACjC;KACJ;IACD,OAAO;AACX,CAAC;AAbD,8CAaC"}
package/package.json CHANGED
@@ -57,11 +57,10 @@
57
57
  "build": "npx tsc",
58
58
  "clean": "rm -rf dist; mkdir -p dist",
59
59
  "line-count": "npx sloc source",
60
- "lint": "npx eslint --config .eslintrc.yml './source/**/*.ts' || true",
61
60
  "test": "npx jest --ci --reporters=default --reporters=jest-junit --coverage"
62
61
  },
63
62
  "types": "./dist/node/index.d.ts",
64
- "version": "7.1.2",
63
+ "version": "8.0.1",
65
64
  "dependencies": {
66
65
  "tslib": "^2.4.1"
67
66
  }