asn1-ts 7.1.1 → 8.0.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.
Files changed (57) 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/decoders/decodeGeneralizedTime.d.ts.map +1 -1
  6. package/dist/node/codecs/ber/decoders/decodeGeneralizedTime.js +1 -8
  7. package/dist/node/codecs/ber/decoders/decodeGeneralizedTime.js.map +1 -1
  8. package/dist/node/codecs/ber/decoders/decodeUTCTime.d.ts.map +1 -1
  9. package/dist/node/codecs/ber/decoders/decodeUTCTime.js +2 -9
  10. package/dist/node/codecs/ber/decoders/decodeUTCTime.js.map +1 -1
  11. package/dist/node/codecs/ber.d.ts +6 -1
  12. package/dist/node/codecs/ber.d.ts.map +1 -1
  13. package/dist/node/codecs/ber.js +38 -9
  14. package/dist/node/codecs/ber.js.map +1 -1
  15. package/dist/node/codecs/cer.d.ts +6 -1
  16. package/dist/node/codecs/cer.d.ts.map +1 -1
  17. package/dist/node/codecs/cer.js +34 -8
  18. package/dist/node/codecs/cer.js.map +1 -1
  19. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.d.ts.map +1 -1
  20. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js +1 -8
  21. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js.map +1 -1
  22. package/dist/node/codecs/der/decoders/decodeUTCTime.d.ts.map +1 -1
  23. package/dist/node/codecs/der/decoders/decodeUTCTime.js +2 -9
  24. package/dist/node/codecs/der/decoders/decodeUTCTime.js.map +1 -1
  25. package/dist/node/codecs/der.d.ts +6 -1
  26. package/dist/node/codecs/der.d.ts.map +1 -1
  27. package/dist/node/codecs/der.js +31 -7
  28. package/dist/node/codecs/der.js.map +1 -1
  29. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.d.ts.map +1 -1
  30. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js +11 -11
  31. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js.map +1 -1
  32. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.d.ts.map +1 -1
  33. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js +13 -10
  34. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js.map +1 -1
  35. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.d.ts.map +1 -1
  36. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js +26 -13
  37. package/dist/node/codecs/x690/encoders/encodeObjectIdentifier.js.map +1 -1
  38. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.d.ts.map +1 -1
  39. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js +22 -9
  40. package/dist/node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js.map +1 -1
  41. package/dist/node/types/ObjectIdentifier.d.ts +1 -1
  42. package/dist/node/types/ObjectIdentifier.d.ts.map +1 -1
  43. package/dist/node/types/ObjectIdentifier.js +19 -19
  44. package/dist/node/types/ObjectIdentifier.js.map +1 -1
  45. package/dist/node/utils/decodeBase128.d.ts +2 -1
  46. package/dist/node/utils/decodeBase128.d.ts.map +1 -1
  47. package/dist/node/utils/decodeBase128.js +22 -3
  48. package/dist/node/utils/decodeBase128.js.map +1 -1
  49. package/dist/node/utils/index.d.ts +0 -3
  50. package/dist/node/utils/index.d.ts.map +1 -1
  51. package/dist/node/utils/index.js +1 -7
  52. package/dist/node/utils/index.js.map +1 -1
  53. package/dist/node/utils/splitBytesByContinuationBit.d.ts +2 -1
  54. package/dist/node/utils/splitBytesByContinuationBit.d.ts.map +1 -1
  55. package/dist/node/utils/splitBytesByContinuationBit.js +2 -1
  56. package/dist/node/utils/splitBytesByContinuationBit.js.map +1 -1
  57. package/package.json +1 -2
@@ -1 +1 @@
1
- {"version":3,"file":"der.js","sourceRoot":"","sources":["../../../source/codecs/der.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"der.js","sourceRoot":"","sources":["../../../source/codecs/der.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"decodeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeObjectIdentifier.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGpD,MAAM,CAAC,OAAO,UACL,sBAAsB,CAAE,KAAK,EAAE,UAAU,GAAG,iBAAiB,CAyCrE"}
1
+ {"version":3,"file":"decodeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeObjectIdentifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,CAAC,OAAO,UACL,sBAAsB,CAAE,KAAK,EAAE,UAAU,GAAG,iBAAiB,CAsCrE"}
@@ -3,8 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
4
  const ObjectIdentifier_1 = tslib_1.__importDefault(require("../../../types/ObjectIdentifier"));
5
5
  const errors = tslib_1.__importStar(require("../../../errors"));
6
- const splitBytesByContinuationBit_1 = tslib_1.__importDefault(require("../../../utils/splitBytesByContinuationBit"));
7
- const utils_1 = require("../../../utils");
8
6
  function decodeObjectIdentifier(value) {
9
7
  if (value.length === 0) {
10
8
  throw new errors.ASN1TruncationError("Encoded value was too short to be an OBJECT IDENTIFIER!");
@@ -28,17 +26,19 @@ function decodeObjectIdentifier(value) {
28
26
  if (value.length === 1) {
29
27
  return new ObjectIdentifier_1.default(nodes);
30
28
  }
31
- const additionalNodes = Array
32
- .from((0, splitBytesByContinuationBit_1.default)(value.subarray(1)))
33
- .map((b) => {
34
- if (b.length > 1 && b[0] === 0x80) {
29
+ let current_node = 0;
30
+ for (let i = 1; i < value.length; i++) {
31
+ const byte = value[i];
32
+ if ((byte === 0x80) && (current_node === 0)) {
35
33
  throw new errors.ASN1PaddingError("Prohibited padding on OBJECT IDENTIFIER node.");
36
34
  }
37
- return (0, utils_1.decodeBase128)(b);
38
- })
39
- .map((b) => ((b[0] === 0) ? b.subarray(1) : b))
40
- .map(utils_1.decodeUnsignedBigEndianInteger);
41
- nodes.push(...additionalNodes);
35
+ current_node <<= 7;
36
+ current_node += (byte & 127);
37
+ if ((byte & 128) === 0) {
38
+ nodes.push(current_node);
39
+ current_node = 0;
40
+ }
41
+ }
42
42
  return new ObjectIdentifier_1.default(nodes);
43
43
  }
44
44
  exports.default = decodeObjectIdentifier;
@@ -1 +1 @@
1
- {"version":3,"file":"decodeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,+FAA+D;AAC/D,gEAA0C;AAC1C,qHAAqF;AAErF,0CAA+E;AAE/E,SACS,sBAAsB,CAAE,KAAiB;IAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,yDAAyD,CAAC,CAAC;KACnG;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE;QAC1D,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;KAC9D;IAED,MAAM,KAAK,GAAuB,CAAE,CAAC,EAAE,CAAC,CAAE,CAAC;IAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QAClB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KAChC;SAAM,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QACzB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KAChC;SAAM;QACH,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KACvB;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;KACtC;IACD,MAAM,eAAe,GAAa,KAAK;SAClC,IAAI,CAAC,IAAA,qCAA2B,EAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACP,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;YAC/B,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,+CAA+C,CAAC,CAAC;SACtF;QACD,OAAO,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,CAAC;SAKD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9C,GAAG,CAAC,sCAA8B,CAAC,CAAC;IAEzC,KAAK,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;IAC/B,OAAO,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AA1CD,yCA0CC"}
1
+ {"version":3,"file":"decodeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,+FAA+D;AAC/D,gEAA0C;AAG1C,SACS,sBAAsB,CAAE,KAAiB;IAC9C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,yDAAyD,CAAC,CAAC;KACnG;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE;QAC1D,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,CAAC;KAC9D;IAED,MAAM,KAAK,GAAuB,CAAE,CAAC,EAAE,CAAC,CAAE,CAAC;IAC3C,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QAClB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KAChC;SAAM,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE;QACzB,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;KAChC;SAAM;QACH,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACb,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;KACvB;IAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;KACtC;IACD,IAAI,YAAY,GAAW,CAAC,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC,EAAE;YACzC,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,+CAA+C,CAAC,CAAC;SACtF;QACD,YAAY,KAAK,CAAC,CAAC;QACnB,YAAY,IAAI,CAAC,IAAI,GAAG,GAAW,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,GAAW,CAAC,KAAK,CAAC,EAAE;YAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACzB,YAAY,GAAG,CAAC,CAAC;SACpB;KACJ;IACD,OAAO,IAAI,0BAAgB,CAAC,KAAK,CAAC,CAAC;AACvC,CAAC;AAvCD,yCAuCC"}
@@ -1 +1 @@
1
- {"version":3,"file":"decodeRelativeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeRelativeObjectIdentifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAG/C,MAAM,CAAC,OAAO,UACL,8BAA8B,CAAE,KAAK,EAAE,UAAU,GAAG,YAAY,CAqBxE"}
1
+ {"version":3,"file":"decodeRelativeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeRelativeObjectIdentifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,OAAO,UACL,8BAA8B,CAAE,KAAK,EAAE,UAAU,GAAG,YAAY,CAsBxE"}
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- const splitBytesByContinuationBit_1 = tslib_1.__importDefault(require("../../../utils/splitBytesByContinuationBit"));
5
4
  const errors = tslib_1.__importStar(require("../../../errors"));
6
- const utils_1 = require("../../../utils");
7
5
  function decodeRelativeObjectIdentifier(value) {
8
6
  if (value.length === 0) {
9
7
  return [];
@@ -11,16 +9,21 @@ function decodeRelativeObjectIdentifier(value) {
11
9
  if (value.length > 1 && value[value.length - 1] & 0b10000000) {
12
10
  throw new errors.ASN1TruncationError("Relative OID was truncated.");
13
11
  }
14
- return Array
15
- .from((0, splitBytesByContinuationBit_1.default)(value))
16
- .map((b) => {
17
- if (b.length > 1 && b[0] === 0x80) {
12
+ const nodes = [];
13
+ let current_node = 0;
14
+ for (let i = 0; i < value.length; i++) {
15
+ const byte = value[i];
16
+ if ((byte === 0x80) && (current_node === 0)) {
18
17
  throw new errors.ASN1PaddingError("Prohibited padding on RELATIVE-OID node.");
19
18
  }
20
- return (0, utils_1.decodeBase128)(b);
21
- })
22
- .map((b) => ((b[0] === 0) ? b.slice(1) : b))
23
- .map(utils_1.decodeUnsignedBigEndianInteger);
19
+ current_node <<= 7;
20
+ current_node += (byte & 127);
21
+ if ((byte & 128) === 0) {
22
+ nodes.push(current_node);
23
+ current_node = 0;
24
+ }
25
+ }
26
+ return nodes;
24
27
  }
25
28
  exports.default = decodeRelativeObjectIdentifier;
26
29
  //# sourceMappingURL=decodeRelativeObjectIdentifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"decodeRelativeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeRelativeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,qHAAqF;AACrF,gEAA0C;AAE1C,0CAA+E;AAE/E,SACS,8BAA8B,CAAE,KAAiB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,EAAE,CAAC;KACb;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE;QAC1D,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,CAAC;KACvE;IACD,OAAO,KAAK;SACP,IAAI,CAAC,IAAA,qCAA2B,EAAC,KAAK,CAAC,CAAC;SACxC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACP,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;YAC/B,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,0CAA0C,CAAC,CAAC;SACjF;QACD,OAAO,IAAA,qBAAa,EAAC,CAAC,CAAC,CAAC;IAC5B,CAAC,CAAC;SAKD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3C,GAAG,CAAC,sCAA8B,CAAC,CAAC;AAC7C,CAAC;AAtBD,iDAsBC"}
1
+ {"version":3,"file":"decodeRelativeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/decoders/decodeRelativeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,gEAA0C;AAG1C,SACS,8BAA8B,CAAE,KAAiB;IACtD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QACpB,OAAO,EAAE,CAAC;KACb;IACD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,UAAU,EAAE;QAC1D,MAAM,IAAI,MAAM,CAAC,mBAAmB,CAAC,6BAA6B,CAAC,CAAC;KACvE;IACD,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,YAAY,GAAW,CAAC,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,CAAC,EAAE;YACzC,MAAM,IAAI,MAAM,CAAC,gBAAgB,CAAC,0CAA0C,CAAC,CAAC;SACjF;QACD,YAAY,KAAK,CAAC,CAAC;QACnB,YAAY,IAAI,CAAC,IAAI,GAAG,GAAW,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,GAAW,CAAC,KAAK,CAAC,EAAE;YAC5B,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACzB,YAAY,GAAG,CAAC,CAAC;SACpB;KACJ;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAvBD,iDAuBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"encodeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeObjectIdentifier.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,CAAC,OAAO,UACL,sBAAsB,CAAE,KAAK,EAAE,iBAAiB,GAAG,MAAM,CAWjE"}
1
+ {"version":3,"file":"encodeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeObjectIdentifier.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,MAAM,CAAC,OAAO,UACL,sBAAsB,CAAE,KAAK,EAAE,iBAAiB,GAAG,MAAM,CA2BjE"}
@@ -1,19 +1,32 @@
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 encodeObjectIdentifier(value) {
7
- const numbers = value.nodes;
8
- const pre = new Uint8Array([((numbers[0] * 40) + numbers[1])]);
9
- const post = numbers
10
- .slice(2)
11
- .map(encodeUnsignedBigEndianInteger_1.default)
12
- .map(encodeBase128_1.default)
13
- .map((arc) => ((arc[0] === 0x80)
14
- ? arc.subarray(1)
15
- : arc));
16
- return Buffer.concat([pre, ...post]);
4
+ const arcs = value.nodes;
5
+ const node0 = arcs[0];
6
+ const node1 = arcs[1];
7
+ const byte0 = (node0 * 40) + node1;
8
+ const ret = [byte0];
9
+ for (const arc of arcs.slice(2)) {
10
+ if (arc < 128) {
11
+ ret.push(arc);
12
+ continue;
13
+ }
14
+ let l = 0;
15
+ let i = arc;
16
+ while (i > 0) {
17
+ l++;
18
+ i >>>= 7;
19
+ }
20
+ for (let j = l - 1; j >= 0; j--) {
21
+ let o = (arc >>> (j * 7));
22
+ o &= 0x7f;
23
+ if (j !== 0) {
24
+ o |= 0x80;
25
+ }
26
+ ret.push(o);
27
+ }
28
+ }
29
+ return Buffer.from(ret);
17
30
  }
18
31
  exports.default = encodeObjectIdentifier;
19
32
  //# sourceMappingURL=encodeObjectIdentifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encodeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeObjectIdentifier.ts"],"names":[],"mappings":";;;AAAA,2HAA2F;AAC3F,yFAAyD;AAGzD,SACS,sBAAsB,CAAE,KAAwB;IACrD,MAAM,OAAO,GAAa,KAAK,CAAC,KAAK,CAAC;IACtC,MAAM,GAAG,GAAe,IAAI,UAAU,CAAC,CAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAiB,OAAO;SAC7B,KAAK,CAAC,CAAC,CAAC;SACR,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,CAAC;IAChB,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;AACzC,CAAC;AAZD,yCAYC"}
1
+ {"version":3,"file":"encodeObjectIdentifier.js","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeObjectIdentifier.ts"],"names":[],"mappings":";;AAEA,SACS,sBAAsB,CAAE,KAAwB;IACrD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC;IACzB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACtB,MAAM,KAAK,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;IACnC,MAAM,GAAG,GAAa,CAAE,KAAK,CAAE,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;QAC7B,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;AA5BD,yCA4BC"}
@@ -1 +1 @@
1
- {"version":3,"file":"encodeRelativeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeRelativeObjectIdentifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,OAAO,UACL,8BAA8B,CAAE,KAAK,EAAE,YAAY,GAAG,UAAU,CAQxE"}
1
+ {"version":3,"file":"encodeRelativeObjectIdentifier.d.ts","sourceRoot":"","sources":["../../../../../source/codecs/x690/encoders/encodeRelativeObjectIdentifier.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,CAAC,OAAO,UACL,8BAA8B,CAAE,KAAK,EAAE,YAAY,GAAG,UAAU,CAuBxE"}
@@ -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;WAqB1C,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,18 @@ 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 - 1), 10);
51
+ arcs.push(arc);
52
+ last = i + 1;
53
+ }
54
+ i++;
55
+ }
56
+ return new ObjectIdentifier(arcs);
57
57
  }
58
58
  static fromBytes(bytes) {
59
59
  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":"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"}
@@ -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.1",
63
+ "version": "8.0.0",
65
64
  "dependencies": {
66
65
  "tslib": "^2.4.1"
67
66
  }