asn1-ts 8.0.5 → 9.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 (430) hide show
  1. package/README.md +2 -1
  2. package/dist/{node/ConstructedElementSpecification.d.ts → ConstructedElementSpecification.d.mts} +2 -2
  3. package/dist/ConstructedElementSpecification.mjs +1 -0
  4. package/dist/{node/asn1.d.ts → asn1.d.mts} +7 -7
  5. package/dist/{node/asn1.js → asn1.mjs} +91 -132
  6. package/dist/{node/classes/ABSTRACT-SYNTAX.d.ts → classes/ABSTRACT-SYNTAX.d.mts} +2 -2
  7. package/dist/classes/ABSTRACT-SYNTAX.mjs +1 -0
  8. package/dist/{node/classes/TYPE-IDENTIFIER.d.ts → classes/TYPE-IDENTIFIER.d.mts} +2 -2
  9. package/dist/classes/TYPE-IDENTIFIER.mjs +1 -0
  10. package/dist/classes/index.d.mts +2 -0
  11. package/dist/classes/index.mjs +1 -0
  12. package/dist/{node/codecs/ber/decoders/decodeBitString.d.ts → codecs/ber/decoders/decodeBitString.d.mts} +1 -1
  13. package/dist/codecs/ber/decoders/decodeBitString.mjs +19 -0
  14. package/dist/{node/codecs/ber/decoders/decodeBoolean.d.ts → codecs/ber/decoders/decodeBoolean.d.mts} +1 -1
  15. package/dist/codecs/ber/decoders/decodeBoolean.mjs +7 -0
  16. package/dist/{node/codecs/ber/decoders/decodeDuration.d.ts → codecs/ber/decoders/decodeDuration.d.mts} +1 -1
  17. package/dist/{node/codecs/ber/decoders/decodeDuration.js → codecs/ber/decoders/decodeDuration.mjs} +9 -48
  18. package/dist/{node/codecs/ber/decoders/decodeGeneralizedTime.d.ts → codecs/ber/decoders/decodeGeneralizedTime.d.mts} +1 -1
  19. package/dist/{node/codecs/ber/decoders/decodeGeneralizedTime.js → codecs/ber/decoders/decodeGeneralizedTime.mjs} +10 -49
  20. package/dist/{node/codecs/ber/decoders/decodeReal.d.ts → codecs/ber/decoders/decodeReal.d.mts} +1 -1
  21. package/dist/codecs/ber/decoders/decodeReal.mjs +108 -0
  22. package/dist/codecs/ber/decoders/decodeSequence.d.mts +3 -0
  23. package/dist/codecs/ber/decoders/decodeSequence.mjs +11 -0
  24. package/dist/{node/codecs/ber/decoders/decodeUTCTime.d.ts → codecs/ber/decoders/decodeUTCTime.d.mts} +1 -1
  25. package/dist/codecs/ber/decoders/decodeUTCTime.mjs +45 -0
  26. package/dist/{node/codecs/ber/encoders/encodeGeneralString.d.ts → codecs/ber/encoders/encodeGeneralString.d.mts} +1 -1
  27. package/dist/codecs/ber/encoders/encodeGeneralString.mjs +13 -0
  28. package/dist/{node/codecs/ber/encoders/encodeGraphicString.d.ts → codecs/ber/encoders/encodeGraphicString.d.mts} +1 -1
  29. package/dist/codecs/ber/encoders/encodeGraphicString.mjs +13 -0
  30. package/dist/{node/codecs/ber/encoders/encodeNumericString.d.ts → codecs/ber/encoders/encodeNumericString.d.mts} +1 -1
  31. package/dist/codecs/ber/encoders/encodeNumericString.mjs +13 -0
  32. package/dist/{node/codecs/ber/encoders/encodeObjectDescriptor.d.ts → codecs/ber/encoders/encodeObjectDescriptor.d.mts} +1 -1
  33. package/dist/codecs/ber/encoders/encodeObjectDescriptor.mjs +13 -0
  34. package/dist/{node/codecs/ber/encoders/encodePrintableString.d.ts → codecs/ber/encoders/encodePrintableString.d.mts} +1 -1
  35. package/dist/codecs/ber/encoders/encodePrintableString.mjs +14 -0
  36. package/dist/{node/codecs/ber/encoders/encodeVisibleString.d.ts → codecs/ber/encoders/encodeVisibleString.d.mts} +1 -1
  37. package/dist/codecs/ber/encoders/encodeVisibleString.mjs +13 -0
  38. package/dist/{node/codecs/ber.d.ts → codecs/ber.d.mts} +5 -5
  39. package/dist/{node/codecs/ber.js → codecs/ber.mjs} +142 -180
  40. package/dist/codecs/cer/decoders/decodeSequence.d.mts +3 -0
  41. package/dist/codecs/cer/decoders/decodeSequence.mjs +14 -0
  42. package/dist/{node/codecs/cer.d.ts → codecs/cer.d.mts} +5 -5
  43. package/dist/{node/codecs/cer.js → codecs/cer.mjs} +146 -184
  44. package/dist/{node/codecs/coer/decoders/decodeBoolean.d.ts → codecs/coer/decoders/decodeBoolean.d.mts} +1 -1
  45. package/dist/codecs/coer/decoders/decodeBoolean.mjs +10 -0
  46. package/dist/{node/codecs/der/decoders/decodeBitString.d.ts → codecs/der/decoders/decodeBitString.d.mts} +1 -1
  47. package/dist/codecs/der/decoders/decodeBitString.mjs +23 -0
  48. package/dist/{node/codecs/der/decoders/decodeBoolean.d.ts → codecs/der/decoders/decodeBoolean.d.mts} +1 -1
  49. package/dist/codecs/der/decoders/decodeBoolean.mjs +10 -0
  50. package/dist/{node/codecs/der/decoders/decodeDuration.d.ts → codecs/der/decoders/decodeDuration.d.mts} +1 -1
  51. package/dist/{node/codecs/der/decoders/decodeDuration.js → codecs/der/decoders/decodeDuration.mjs} +9 -48
  52. package/dist/{node/codecs/der/decoders/decodeGeneralizedTime.d.ts → codecs/der/decoders/decodeGeneralizedTime.d.mts} +1 -1
  53. package/dist/codecs/der/decoders/decodeGeneralizedTime.mjs +42 -0
  54. package/dist/{node/codecs/der/decoders/decodeReal.d.ts → codecs/der/decoders/decodeReal.d.mts} +1 -1
  55. package/dist/codecs/der/decoders/decodeReal.mjs +95 -0
  56. package/dist/codecs/der/decoders/decodeSequence.d.mts +3 -0
  57. package/dist/codecs/der/decoders/decodeSequence.mjs +14 -0
  58. package/dist/{node/codecs/der/decoders/decodeUTCTime.d.ts → codecs/der/decoders/decodeUTCTime.d.mts} +1 -1
  59. package/dist/codecs/der/decoders/decodeUTCTime.mjs +24 -0
  60. package/dist/{node/codecs/der.d.ts → codecs/der.d.mts} +5 -5
  61. package/dist/{node/codecs/der.js → codecs/der.mjs} +138 -176
  62. package/dist/{node/codecs/x690/decoders/decodeCharacterString.d.ts → codecs/x690/decoders/decodeCharacterString.d.mts} +1 -1
  63. package/dist/codecs/x690/decoders/decodeCharacterString.mjs +12 -0
  64. package/dist/{node/codecs/x690/decoders/decodeDate.d.ts → codecs/x690/decoders/decodeDate.d.mts} +1 -1
  65. package/dist/codecs/x690/decoders/decodeDate.mjs +10 -0
  66. package/dist/{node/codecs/x690/decoders/decodeDateTime.d.ts → codecs/x690/decoders/decodeDateTime.d.mts} +1 -1
  67. package/dist/codecs/x690/decoders/decodeDateTime.mjs +13 -0
  68. package/dist/{node/codecs/x690/decoders/decodeEmbeddedPDV.d.ts → codecs/x690/decoders/decodeEmbeddedPDV.d.mts} +1 -1
  69. package/dist/codecs/x690/decoders/decodeEmbeddedPDV.mjs +8 -0
  70. package/dist/{node/codecs/x690/decoders/decodeExternal.d.ts → codecs/x690/decoders/decodeExternal.d.mts} +1 -1
  71. package/dist/codecs/x690/decoders/decodeExternal.mjs +39 -0
  72. package/dist/{node/codecs/x690/decoders/decodeGeneralString.d.ts → codecs/x690/decoders/decodeGeneralString.d.mts} +1 -1
  73. package/dist/codecs/x690/decoders/decodeGeneralString.mjs +12 -0
  74. package/dist/{node/codecs/x690/decoders/decodeGraphicString.d.ts → codecs/x690/decoders/decodeGraphicString.d.mts} +1 -1
  75. package/dist/codecs/x690/decoders/decodeGraphicString.mjs +12 -0
  76. package/dist/{node/codecs/x690/decoders/decodeInteger.d.ts → codecs/x690/decoders/decodeInteger.d.mts} +1 -1
  77. package/dist/codecs/x690/decoders/decodeInteger.mjs +16 -0
  78. package/dist/{node/codecs/x690/decoders/decodeNumericString.d.ts → codecs/x690/decoders/decodeNumericString.d.mts} +1 -1
  79. package/dist/codecs/x690/decoders/decodeNumericString.mjs +12 -0
  80. package/dist/{node/codecs/x690/decoders/decodeOIDIRI.d.ts → codecs/x690/decoders/decodeOIDIRI.d.mts} +1 -1
  81. package/dist/codecs/x690/decoders/decodeOIDIRI.mjs +4 -0
  82. package/dist/{node/codecs/x690/decoders/decodeObjectDescriptor.d.ts → codecs/x690/decoders/decodeObjectDescriptor.d.mts} +1 -1
  83. package/dist/codecs/x690/decoders/decodeObjectDescriptor.mjs +12 -0
  84. package/dist/{node/codecs/x690/decoders/decodeObjectIdentifier.d.ts → codecs/x690/decoders/decodeObjectIdentifier.d.mts} +1 -1
  85. package/dist/codecs/x690/decoders/decodeObjectIdentifier.mjs +46 -0
  86. package/dist/{node/codecs/x690/decoders/decodePrintableString.d.ts → codecs/x690/decoders/decodePrintableString.d.mts} +1 -1
  87. package/dist/codecs/x690/decoders/decodePrintableString.mjs +13 -0
  88. package/dist/{node/codecs/x690/decoders/decodeRelativeOIDIRI.d.ts → codecs/x690/decoders/decodeRelativeOIDIRI.d.mts} +1 -1
  89. package/dist/codecs/x690/decoders/decodeRelativeOIDIRI.mjs +4 -0
  90. package/dist/{node/codecs/x690/decoders/decodeRelativeObjectIdentifier.d.ts → codecs/x690/decoders/decodeRelativeObjectIdentifier.d.mts} +1 -1
  91. package/dist/codecs/x690/decoders/decodeRelativeObjectIdentifier.mjs +24 -0
  92. package/dist/{node/codecs/x690/decoders/decodeTime.d.ts → codecs/x690/decoders/decodeTime.d.mts} +1 -1
  93. package/dist/codecs/x690/decoders/decodeTime.mjs +4 -0
  94. package/dist/{node/codecs/x690/decoders/decodeTimeOfDay.d.ts → codecs/x690/decoders/decodeTimeOfDay.d.mts} +1 -1
  95. package/dist/codecs/x690/decoders/decodeTimeOfDay.mjs +14 -0
  96. package/dist/{node/codecs/x690/decoders/decodeVisibleString.d.ts → codecs/x690/decoders/decodeVisibleString.d.mts} +1 -1
  97. package/dist/codecs/x690/decoders/decodeVisibleString.mjs +12 -0
  98. package/dist/{node/codecs/x690/encoders/encodeBitString.d.ts → codecs/x690/encoders/encodeBitString.d.mts} +1 -1
  99. package/dist/codecs/x690/encoders/encodeBitString.mjs +13 -0
  100. package/dist/{node/codecs/x690/encoders/encodeBoolean.d.ts → codecs/x690/encoders/encodeBoolean.d.mts} +1 -1
  101. package/dist/codecs/x690/encoders/encodeBoolean.mjs +3 -0
  102. package/dist/{node/codecs/x690/encoders/encodeCharacterString.d.ts → codecs/x690/encoders/encodeCharacterString.d.mts} +1 -1
  103. package/dist/codecs/x690/encoders/encodeCharacterString.mjs +9 -0
  104. package/dist/{node/codecs/x690/encoders/encodeDate.d.ts → codecs/x690/encoders/encodeDate.d.mts} +1 -1
  105. package/dist/codecs/x690/encoders/encodeDate.mjs +11 -0
  106. package/dist/{node/codecs/x690/encoders/encodeDateTime.d.ts → codecs/x690/encoders/encodeDateTime.d.mts} +1 -1
  107. package/dist/codecs/x690/encoders/encodeDateTime.mjs +14 -0
  108. package/dist/{node/codecs/x690/encoders/encodeDuration.d.ts → codecs/x690/encoders/encodeDuration.d.mts} +1 -1
  109. package/dist/{node/codecs/x690/encoders/encodeDuration.js → codecs/x690/encoders/encodeDuration.mjs} +5 -11
  110. package/dist/{node/codecs/x690/encoders/encodeEmbeddedPDV.d.ts → codecs/x690/encoders/encodeEmbeddedPDV.d.mts} +1 -1
  111. package/dist/codecs/x690/encoders/encodeEmbeddedPDV.mjs +9 -0
  112. package/dist/{node/codecs/x690/encoders/encodeExternal.d.ts → codecs/x690/encoders/encodeExternal.d.mts} +1 -1
  113. package/dist/codecs/x690/encoders/encodeExternal.mjs +36 -0
  114. package/dist/{node/codecs/x690/encoders/encodeGeneralizedTime.d.ts → codecs/x690/encoders/encodeGeneralizedTime.d.mts} +1 -1
  115. package/dist/{node/codecs/x690/encoders/encodeGeneralizedTime.js → codecs/x690/encoders/encodeGeneralizedTime.mjs} +3 -9
  116. package/dist/{node/codecs/x690/encoders/encodeInteger.d.ts → codecs/x690/encoders/encodeInteger.d.mts} +1 -1
  117. package/dist/codecs/x690/encoders/encodeInteger.mjs +4 -0
  118. package/dist/{node/codecs/x690/encoders/encodeOIDIRI.d.ts → codecs/x690/encoders/encodeOIDIRI.d.mts} +1 -1
  119. package/dist/codecs/x690/encoders/encodeOIDIRI.mjs +4 -0
  120. package/dist/{node/codecs/x690/encoders/encodeObjectIdentifier.d.ts → codecs/x690/encoders/encodeObjectIdentifier.d.mts} +1 -1
  121. package/dist/{node/codecs/x690/encoders/encodeObjectIdentifier.js → codecs/x690/encoders/encodeObjectIdentifier.mjs} +3 -6
  122. package/dist/{node/codecs/x690/encoders/encodeReal.d.ts → codecs/x690/encoders/encodeReal.d.mts} +1 -1
  123. package/dist/codecs/x690/encoders/encodeReal.mjs +4 -0
  124. package/dist/{node/codecs/x690/encoders/encodeRelativeOIDIRI.d.ts → codecs/x690/encoders/encodeRelativeOIDIRI.d.mts} +1 -1
  125. package/dist/codecs/x690/encoders/encodeRelativeOIDIRI.mjs +4 -0
  126. package/dist/{node/codecs/x690/encoders/encodeRelativeObjectIdentifier.d.ts → codecs/x690/encoders/encodeRelativeObjectIdentifier.d.mts} +1 -1
  127. package/dist/{node/codecs/x690/encoders/encodeRelativeObjectIdentifier.js → codecs/x690/encoders/encodeRelativeObjectIdentifier.mjs} +3 -6
  128. package/dist/codecs/x690/encoders/encodeSequence.d.mts +3 -0
  129. package/dist/codecs/x690/encoders/encodeSequence.mjs +4 -0
  130. package/dist/{node/codecs/x690/encoders/encodeTime.d.ts → codecs/x690/encoders/encodeTime.d.mts} +1 -1
  131. package/dist/codecs/x690/encoders/encodeTime.mjs +4 -0
  132. package/dist/{node/codecs/x690/encoders/encodeTimeOfDay.d.ts → codecs/x690/encoders/encodeTimeOfDay.d.mts} +1 -1
  133. package/dist/codecs/x690/encoders/encodeTimeOfDay.mjs +4 -0
  134. package/dist/{node/codecs/x690/encoders/encodeUTCTime.d.ts → codecs/x690/encoders/encodeUTCTime.d.mts} +1 -1
  135. package/dist/{node/codecs/x690/encoders/encodeUTCTime.js → codecs/x690/encoders/encodeUTCTime.mjs} +3 -9
  136. package/dist/{node/errors.d.ts → errors.d.mts} +1 -1
  137. package/dist/{node/errors.js → errors.mjs} +26 -23
  138. package/dist/{node/functional.d.ts → functional.d.mts} +2 -2
  139. package/dist/functional.mjs +766 -0
  140. package/dist/index.d.mts +16 -0
  141. package/dist/index.mjs +15 -0
  142. package/dist/interfaces/Byteable.d.mts +4 -0
  143. package/dist/interfaces/Byteable.mjs +1 -0
  144. package/dist/interfaces/CharacterValidationFunction.mjs +1 -0
  145. package/dist/interfaces/Debyteable.mjs +1 -0
  146. package/dist/{node/interfaces/Deelementable.d.ts → interfaces/Deelementable.d.mts} +1 -1
  147. package/dist/interfaces/Deelementable.mjs +1 -0
  148. package/dist/interfaces/Destringable.mjs +1 -0
  149. package/dist/interfaces/Elementable.d.mts +4 -0
  150. package/dist/interfaces/Elementable.mjs +1 -0
  151. package/dist/interfaces/Enbyteable.mjs +1 -0
  152. package/dist/{node/interfaces/Enelementable.d.ts → interfaces/Enelementable.d.mts} +1 -1
  153. package/dist/interfaces/Enelementable.mjs +1 -0
  154. package/dist/interfaces/Enstringable.mjs +1 -0
  155. package/dist/{node/interfaces/Identified.d.ts → interfaces/Identified.d.mts} +1 -1
  156. package/dist/interfaces/Identified.mjs +1 -0
  157. package/dist/interfaces/Long.mjs +1 -0
  158. package/dist/interfaces/Named.mjs +1 -0
  159. package/dist/interfaces/Stringable.d.mts +4 -0
  160. package/dist/interfaces/Stringable.mjs +1 -0
  161. package/dist/interfaces/index.d.mts +12 -0
  162. package/dist/interfaces/index.mjs +1 -0
  163. package/dist/{node/macros.d.ts → macros.d.mts} +5 -5
  164. package/dist/macros.mjs +14 -0
  165. package/dist/{node/types/CharacterString.d.ts → types/CharacterString.d.mts} +1 -1
  166. package/dist/{node/types/CharacterString.js → types/CharacterString.mjs} +3 -4
  167. package/dist/{node/types/EmbeddedPDV.d.ts → types/EmbeddedPDV.d.mts} +1 -1
  168. package/dist/{node/types/EmbeddedPDV.js → types/EmbeddedPDV.mjs} +3 -4
  169. package/dist/{node/types/External.d.ts → types/External.d.mts} +2 -2
  170. package/dist/{node/types/External.js → types/External.mjs} +7 -9
  171. package/dist/{node/types/ObjectIdentifier.js → types/ObjectIdentifier.mjs} +6 -11
  172. package/dist/{node/types/TypeIdentifier.d.ts → types/TypeIdentifier.d.mts} +2 -2
  173. package/dist/types/TypeIdentifier.mjs +8 -0
  174. package/dist/types/index.d.mts +18 -0
  175. package/dist/types/index.mjs +18 -0
  176. package/dist/{node/types/time/DATE-ENCODING.d.ts → types/time/DATE-ENCODING.d.mts} +1 -1
  177. package/dist/types/time/DATE-ENCODING.mjs +13 -0
  178. package/dist/{node/types/time/DURATION-EQUIVALENT.d.ts → types/time/DURATION-EQUIVALENT.d.mts} +1 -1
  179. package/dist/types/time/DURATION-EQUIVALENT.mjs +93 -0
  180. package/dist/{node/types/time/DURATION-INTERVAL-ENCODING.d.ts → types/time/DURATION-INTERVAL-ENCODING.d.mts} +1 -1
  181. package/dist/types/time/DURATION-INTERVAL-ENCODING.mjs +50 -0
  182. package/dist/{node/types/time/HOURS-DIFF-ENCODING.d.ts → types/time/HOURS-DIFF-ENCODING.d.mts} +1 -1
  183. package/dist/types/time/HOURS-DIFF-ENCODING.mjs +11 -0
  184. package/dist/{node/types/time/HOURS-ENCODING.d.ts → types/time/HOURS-ENCODING.d.mts} +1 -1
  185. package/dist/types/time/HOURS-ENCODING.mjs +8 -0
  186. package/dist/{node/types/time/HOURS-MINUTES-DIFF-ENCODING.d.ts → types/time/HOURS-MINUTES-DIFF-ENCODING.d.mts} +1 -1
  187. package/dist/types/time/HOURS-MINUTES-DIFF-ENCODING.mjs +14 -0
  188. package/dist/{node/types/time/HOURS-MINUTES-ENCODING.d.ts → types/time/HOURS-MINUTES-ENCODING.d.mts} +1 -1
  189. package/dist/types/time/HOURS-MINUTES-ENCODING.mjs +11 -0
  190. package/dist/{node/types/time/TIME-OF-DAY-DIFF-ENCODING.d.ts → types/time/TIME-OF-DAY-DIFF-ENCODING.d.mts} +1 -1
  191. package/dist/types/time/TIME-OF-DAY-DIFF-ENCODING.mjs +17 -0
  192. package/dist/{node/types/time/TIME-OF-DAY-ENCODING.d.ts → types/time/TIME-OF-DAY-ENCODING.d.mts} +1 -1
  193. package/dist/types/time/TIME-OF-DAY-ENCODING.mjs +14 -0
  194. package/dist/{node/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.d.ts → types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.d.mts} +1 -1
  195. package/dist/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.mjs +20 -0
  196. package/dist/{node/types/time/TIME-OF-DAY-FRACTION-ENCODING.d.ts → types/time/TIME-OF-DAY-FRACTION-ENCODING.d.mts} +1 -1
  197. package/dist/types/time/TIME-OF-DAY-FRACTION-ENCODING.mjs +17 -0
  198. package/dist/{node/types/time/YEAR-ENCODING.d.ts → types/time/YEAR-ENCODING.d.mts} +1 -1
  199. package/dist/types/time/YEAR-ENCODING.mjs +6 -0
  200. package/dist/{node/types/time/YEAR-MONTH-ENCODING.d.ts → types/time/YEAR-MONTH-ENCODING.d.mts} +1 -1
  201. package/dist/types/time/YEAR-MONTH-ENCODING.mjs +10 -0
  202. package/dist/utils/base128Length.mjs +3 -0
  203. package/dist/{node/utils/bigint.d.ts → utils/bigint.d.mts} +1 -1
  204. package/dist/{node/utils/bigint.js → utils/bigint.mjs} +21 -25
  205. package/dist/{node/utils/compareSetOfElementsCanonically.d.ts → utils/compareSetOfElementsCanonically.d.mts} +1 -1
  206. package/dist/{node/utils/compareSetOfElementsCanonically.js → utils/compareSetOfElementsCanonically.mjs} +1 -4
  207. package/dist/utils/convertBytesToText.mjs +14 -0
  208. package/dist/utils/convertTextToBytes.mjs +11 -0
  209. package/dist/utils/decodeIEEE754DoublePrecisionFloat.mjs +3 -0
  210. package/dist/utils/decodeIEEE754SinglePrecisionFloat.mjs +3 -0
  211. package/dist/utils/decodeSignedBigEndianInteger.mjs +13 -0
  212. package/dist/utils/decodeUnsignedBigEndianInteger.mjs +13 -0
  213. package/dist/utils/decodeX690RealNumber.mjs +108 -0
  214. package/dist/utils/dissectFloat.mjs +13 -0
  215. package/dist/utils/encodeIEEE754DoublePrecisionFloat.mjs +3 -0
  216. package/dist/utils/encodeIEEE754SinglePrecisionFloat.mjs +3 -0
  217. package/dist/utils/encodeSignedBigEndianInteger.mjs +36 -0
  218. package/dist/utils/encodeUnsignedBigEndianInteger.mjs +23 -0
  219. package/dist/utils/encodeX690Base10RealNumber.mjs +21 -0
  220. package/dist/utils/encodeX690BinaryRealNumber.mjs +43 -0
  221. package/dist/utils/getBitFromBase128.mjs +4 -0
  222. package/dist/utils/getBitFromBase256.mjs +3 -0
  223. package/dist/{node/utils/index.d.ts → utils/index.d.mts} +22 -22
  224. package/dist/utils/index.mjs +22 -0
  225. package/dist/{node/utils/isInCanonicalOrder.d.ts → utils/isInCanonicalOrder.d.mts} +1 -1
  226. package/dist/{node/utils/isInCanonicalOrder.js → utils/isInCanonicalOrder.mjs} +4 -7
  227. package/dist/{node/utils/isUniquelyTagged.d.ts → utils/isUniquelyTagged.d.mts} +1 -1
  228. package/dist/{node/utils/isUniquelyTagged.js → utils/isUniquelyTagged.mjs} +1 -4
  229. package/dist/{node/utils/packBits.d.ts → utils/packBits.d.mts} +1 -1
  230. package/dist/{node/utils/packBits.js → utils/packBits.mjs} +3 -6
  231. package/dist/{node/utils/setBitInBase128.js → utils/setBitInBase128.mjs} +1 -4
  232. package/dist/{node/utils/setBitInBase256.js → utils/setBitInBase256.mjs} +1 -4
  233. package/dist/{node/utils/sortCanonically.d.ts → utils/sortCanonically.d.mts} +1 -1
  234. package/dist/utils/sortCanonically.mjs +11 -0
  235. package/dist/utils/splitOctetsCanonically.mjs +5 -0
  236. package/dist/{node/utils/trimLeadingPaddingBytes.js → utils/trimLeadingPaddingBytes.mjs} +1 -4
  237. package/dist/{node/utils/unpackBits.d.ts → utils/unpackBits.d.mts} +1 -1
  238. package/dist/{node/utils/unpackBits.js → utils/unpackBits.mjs} +3 -6
  239. package/dist/{node/validators/datetimeComponentValidator.d.ts → validators/datetimeComponentValidator.d.mts} +1 -1
  240. package/dist/validators/datetimeComponentValidator.mjs +14 -0
  241. package/dist/{node/validators/index.d.ts → validators/index.d.mts} +6 -6
  242. package/dist/validators/index.mjs +6 -0
  243. package/dist/validators/isGeneralCharacter.mjs +3 -0
  244. package/dist/validators/isGraphicCharacter.mjs +3 -0
  245. package/dist/validators/isNumericCharacter.mjs +3 -0
  246. package/dist/validators/isObjectDescriptorCharacter.mjs +4 -0
  247. package/dist/{node/validators/isPrintableCharacter.js → validators/isPrintableCharacter.mjs} +1 -4
  248. package/dist/validators/isVisibleCharacter.mjs +4 -0
  249. package/dist/{node/validators/validateConstruction.d.ts → validators/validateConstruction.d.mts} +2 -2
  250. package/dist/validators/validateConstruction.mjs +37 -0
  251. package/dist/validators/validateDate.mjs +49 -0
  252. package/dist/validators/validateDateTime.mjs +6 -0
  253. package/dist/validators/validateTime.mjs +21 -0
  254. package/dist/{node/values.js → values.mjs} +36 -39
  255. package/dist/{node/x690.d.ts → x690.d.mts} +2 -2
  256. package/dist/x690.mjs +95 -0
  257. package/package.json +8 -7
  258. package/dist/node/ConstructedElementSpecification.js +0 -2
  259. package/dist/node/classes/ABSTRACT-SYNTAX.js +0 -2
  260. package/dist/node/classes/TYPE-IDENTIFIER.js +0 -2
  261. package/dist/node/classes/index.d.ts +0 -2
  262. package/dist/node/classes/index.js +0 -2
  263. package/dist/node/codecs/ber/decoders/decodeBitString.js +0 -55
  264. package/dist/node/codecs/ber/decoders/decodeBoolean.js +0 -43
  265. package/dist/node/codecs/ber/decoders/decodeReal.js +0 -147
  266. package/dist/node/codecs/ber/decoders/decodeSequence.d.ts +0 -3
  267. package/dist/node/codecs/ber/decoders/decodeSequence.js +0 -17
  268. package/dist/node/codecs/ber/decoders/decodeUTCTime.js +0 -84
  269. package/dist/node/codecs/ber/encoders/encodeGeneralString.js +0 -19
  270. package/dist/node/codecs/ber/encoders/encodeGraphicString.js +0 -19
  271. package/dist/node/codecs/ber/encoders/encodeNumericString.js +0 -19
  272. package/dist/node/codecs/ber/encoders/encodeObjectDescriptor.js +0 -19
  273. package/dist/node/codecs/ber/encoders/encodePrintableString.js +0 -20
  274. package/dist/node/codecs/ber/encoders/encodeVisibleString.js +0 -19
  275. package/dist/node/codecs/cer/decoders/decodeSequence.d.ts +0 -3
  276. package/dist/node/codecs/cer/decoders/decodeSequence.js +0 -20
  277. package/dist/node/codecs/coer/decoders/decodeBoolean.js +0 -46
  278. package/dist/node/codecs/der/decoders/decodeBitString.js +0 -59
  279. package/dist/node/codecs/der/decoders/decodeBoolean.js +0 -46
  280. package/dist/node/codecs/der/decoders/decodeGeneralizedTime.js +0 -81
  281. package/dist/node/codecs/der/decoders/decodeReal.js +0 -134
  282. package/dist/node/codecs/der/decoders/decodeSequence.d.ts +0 -3
  283. package/dist/node/codecs/der/decoders/decodeSequence.js +0 -20
  284. package/dist/node/codecs/der/decoders/decodeUTCTime.js +0 -63
  285. package/dist/node/codecs/oer/decoders/decodeBoolean.d.ts +0 -2
  286. package/dist/node/codecs/oer/decoders/decodeBoolean.js +0 -43
  287. package/dist/node/codecs/x690/decoders/decodeCharacterString.js +0 -18
  288. package/dist/node/codecs/x690/decoders/decodeDate.js +0 -16
  289. package/dist/node/codecs/x690/decoders/decodeDateTime.js +0 -19
  290. package/dist/node/codecs/x690/decoders/decodeEmbeddedPDV.js +0 -14
  291. package/dist/node/codecs/x690/decoders/decodeExternal.js +0 -78
  292. package/dist/node/codecs/x690/decoders/decodeGeneralString.js +0 -18
  293. package/dist/node/codecs/x690/decoders/decodeGraphicString.js +0 -18
  294. package/dist/node/codecs/x690/decoders/decodeInteger.js +0 -52
  295. package/dist/node/codecs/x690/decoders/decodeNumericString.js +0 -18
  296. package/dist/node/codecs/x690/decoders/decodeOIDIRI.js +0 -10
  297. package/dist/node/codecs/x690/decoders/decodeObjectDescriptor.js +0 -18
  298. package/dist/node/codecs/x690/decoders/decodeObjectIdentifier.js +0 -85
  299. package/dist/node/codecs/x690/decoders/decodePrintableString.js +0 -19
  300. package/dist/node/codecs/x690/decoders/decodeRelativeOIDIRI.js +0 -10
  301. package/dist/node/codecs/x690/decoders/decodeRelativeObjectIdentifier.js +0 -60
  302. package/dist/node/codecs/x690/decoders/decodeTime.js +0 -10
  303. package/dist/node/codecs/x690/decoders/decodeTimeOfDay.js +0 -20
  304. package/dist/node/codecs/x690/decoders/decodeVisibleString.js +0 -18
  305. package/dist/node/codecs/x690/encoders/encodeBitString.js +0 -19
  306. package/dist/node/codecs/x690/encoders/encodeBoolean.js +0 -6
  307. package/dist/node/codecs/x690/encoders/encodeCharacterString.js +0 -15
  308. package/dist/node/codecs/x690/encoders/encodeDate.js +0 -50
  309. package/dist/node/codecs/x690/encoders/encodeDateTime.js +0 -53
  310. package/dist/node/codecs/x690/encoders/encodeEmbeddedPDV.js +0 -15
  311. package/dist/node/codecs/x690/encoders/encodeExternal.js +0 -42
  312. package/dist/node/codecs/x690/encoders/encodeInteger.js +0 -7
  313. package/dist/node/codecs/x690/encoders/encodeOIDIRI.js +0 -10
  314. package/dist/node/codecs/x690/encoders/encodeReal.js +0 -10
  315. package/dist/node/codecs/x690/encoders/encodeRelativeOIDIRI.js +0 -10
  316. package/dist/node/codecs/x690/encoders/encodeSequence.d.ts +0 -3
  317. package/dist/node/codecs/x690/encoders/encodeSequence.js +0 -7
  318. package/dist/node/codecs/x690/encoders/encodeTime.js +0 -10
  319. package/dist/node/codecs/x690/encoders/encodeTimeOfDay.js +0 -10
  320. package/dist/node/codecs/x696/encoders/encodeBoolean.d.ts +0 -2
  321. package/dist/node/codecs/x696/encoders/encodeBoolean.js +0 -6
  322. package/dist/node/functional.js +0 -880
  323. package/dist/node/index.d.ts +0 -16
  324. package/dist/node/index.js +0 -42
  325. package/dist/node/interfaces/Byteable.d.ts +0 -4
  326. package/dist/node/interfaces/Byteable.js +0 -2
  327. package/dist/node/interfaces/CharacterValidationFunction.js +0 -2
  328. package/dist/node/interfaces/Debyteable.js +0 -2
  329. package/dist/node/interfaces/Deelementable.js +0 -2
  330. package/dist/node/interfaces/Destringable.js +0 -2
  331. package/dist/node/interfaces/Elementable.d.ts +0 -4
  332. package/dist/node/interfaces/Elementable.js +0 -2
  333. package/dist/node/interfaces/Enbyteable.js +0 -2
  334. package/dist/node/interfaces/Enelementable.js +0 -2
  335. package/dist/node/interfaces/Enstringable.js +0 -2
  336. package/dist/node/interfaces/Identified.js +0 -2
  337. package/dist/node/interfaces/Long.js +0 -2
  338. package/dist/node/interfaces/Named.js +0 -2
  339. package/dist/node/interfaces/Stringable.d.ts +0 -4
  340. package/dist/node/interfaces/Stringable.js +0 -2
  341. package/dist/node/interfaces/index.d.ts +0 -12
  342. package/dist/node/interfaces/index.js +0 -2
  343. package/dist/node/macros.js +0 -21
  344. package/dist/node/types/TypeIdentifier.js +0 -9
  345. package/dist/node/types/index.d.ts +0 -18
  346. package/dist/node/types/index.js +0 -42
  347. package/dist/node/types/time/DATE-ENCODING.js +0 -16
  348. package/dist/node/types/time/DURATION-EQUIVALENT.js +0 -124
  349. package/dist/node/types/time/DURATION-INTERVAL-ENCODING.js +0 -81
  350. package/dist/node/types/time/HOURS-DIFF-ENCODING.js +0 -15
  351. package/dist/node/types/time/HOURS-ENCODING.js +0 -13
  352. package/dist/node/types/time/HOURS-MINUTES-DIFF-ENCODING.js +0 -17
  353. package/dist/node/types/time/HOURS-MINUTES-ENCODING.js +0 -15
  354. package/dist/node/types/time/TIME-OF-DAY-DIFF-ENCODING.js +0 -19
  355. package/dist/node/types/time/TIME-OF-DAY-ENCODING.js +0 -17
  356. package/dist/node/types/time/TIME-OF-DAY-FRACTION-DIFF-ENCODING.js +0 -21
  357. package/dist/node/types/time/TIME-OF-DAY-FRACTION-ENCODING.js +0 -19
  358. package/dist/node/types/time/YEAR-ENCODING.js +0 -8
  359. package/dist/node/types/time/YEAR-MONTH-ENCODING.js +0 -14
  360. package/dist/node/utils/base128Length.js +0 -6
  361. package/dist/node/utils/convertBytesToText.js +0 -17
  362. package/dist/node/utils/convertTextToBytes.js +0 -14
  363. package/dist/node/utils/decodeIEEE754DoublePrecisionFloat.js +0 -6
  364. package/dist/node/utils/decodeIEEE754SinglePrecisionFloat.js +0 -6
  365. package/dist/node/utils/decodeSignedBigEndianInteger.js +0 -49
  366. package/dist/node/utils/decodeUnsignedBigEndianInteger.js +0 -49
  367. package/dist/node/utils/decodeX690RealNumber.js +0 -147
  368. package/dist/node/utils/dissectFloat.js +0 -16
  369. package/dist/node/utils/encodeIEEE754DoublePrecisionFloat.js +0 -6
  370. package/dist/node/utils/encodeIEEE754SinglePrecisionFloat.js +0 -6
  371. package/dist/node/utils/encodeSignedBigEndianInteger.js +0 -72
  372. package/dist/node/utils/encodeUnsignedBigEndianInteger.js +0 -59
  373. package/dist/node/utils/encodeX690Base10RealNumber.js +0 -27
  374. package/dist/node/utils/encodeX690BinaryRealNumber.js +0 -82
  375. package/dist/node/utils/getBitFromBase128.js +0 -7
  376. package/dist/node/utils/getBitFromBase256.js +0 -6
  377. package/dist/node/utils/index.js +0 -50
  378. package/dist/node/utils/sortCanonically.js +0 -14
  379. package/dist/node/utils/splitOctetsCanonically.js +0 -8
  380. package/dist/node/validators/datetimeComponentValidator.js +0 -50
  381. package/dist/node/validators/index.js +0 -18
  382. package/dist/node/validators/isGeneralCharacter.js +0 -6
  383. package/dist/node/validators/isGraphicCharacter.js +0 -6
  384. package/dist/node/validators/isNumericCharacter.js +0 -6
  385. package/dist/node/validators/isObjectDescriptorCharacter.js +0 -10
  386. package/dist/node/validators/isVisibleCharacter.js +0 -10
  387. package/dist/node/validators/validateConstruction.js +0 -73
  388. package/dist/node/validators/validateDate.js +0 -85
  389. package/dist/node/validators/validateDateTime.js +0 -12
  390. package/dist/node/validators/validateTime.js +0 -57
  391. package/dist/node/x690.js +0 -134
  392. /package/dist/{node/interfaces/CharacterValidationFunction.d.ts → interfaces/CharacterValidationFunction.d.mts} +0 -0
  393. /package/dist/{node/interfaces/Debyteable.d.ts → interfaces/Debyteable.d.mts} +0 -0
  394. /package/dist/{node/interfaces/Destringable.d.ts → interfaces/Destringable.d.mts} +0 -0
  395. /package/dist/{node/interfaces/Enbyteable.d.ts → interfaces/Enbyteable.d.mts} +0 -0
  396. /package/dist/{node/interfaces/Enstringable.d.ts → interfaces/Enstringable.d.mts} +0 -0
  397. /package/dist/{node/interfaces/Long.d.ts → interfaces/Long.d.mts} +0 -0
  398. /package/dist/{node/interfaces/Named.d.ts → interfaces/Named.d.mts} +0 -0
  399. /package/dist/{node/types/ObjectIdentifier.d.ts → types/ObjectIdentifier.d.mts} +0 -0
  400. /package/dist/{node/utils/base128Length.d.ts → utils/base128Length.d.mts} +0 -0
  401. /package/dist/{node/utils/convertBytesToText.d.ts → utils/convertBytesToText.d.mts} +0 -0
  402. /package/dist/{node/utils/convertTextToBytes.d.ts → utils/convertTextToBytes.d.mts} +0 -0
  403. /package/dist/{node/utils/decodeIEEE754DoublePrecisionFloat.d.ts → utils/decodeIEEE754DoublePrecisionFloat.d.mts} +0 -0
  404. /package/dist/{node/utils/decodeIEEE754SinglePrecisionFloat.d.ts → utils/decodeIEEE754SinglePrecisionFloat.d.mts} +0 -0
  405. /package/dist/{node/utils/decodeSignedBigEndianInteger.d.ts → utils/decodeSignedBigEndianInteger.d.mts} +0 -0
  406. /package/dist/{node/utils/decodeUnsignedBigEndianInteger.d.ts → utils/decodeUnsignedBigEndianInteger.d.mts} +0 -0
  407. /package/dist/{node/utils/decodeX690RealNumber.d.ts → utils/decodeX690RealNumber.d.mts} +0 -0
  408. /package/dist/{node/utils/dissectFloat.d.ts → utils/dissectFloat.d.mts} +0 -0
  409. /package/dist/{node/utils/encodeIEEE754DoublePrecisionFloat.d.ts → utils/encodeIEEE754DoublePrecisionFloat.d.mts} +0 -0
  410. /package/dist/{node/utils/encodeIEEE754SinglePrecisionFloat.d.ts → utils/encodeIEEE754SinglePrecisionFloat.d.mts} +0 -0
  411. /package/dist/{node/utils/encodeSignedBigEndianInteger.d.ts → utils/encodeSignedBigEndianInteger.d.mts} +0 -0
  412. /package/dist/{node/utils/encodeUnsignedBigEndianInteger.d.ts → utils/encodeUnsignedBigEndianInteger.d.mts} +0 -0
  413. /package/dist/{node/utils/encodeX690Base10RealNumber.d.ts → utils/encodeX690Base10RealNumber.d.mts} +0 -0
  414. /package/dist/{node/utils/encodeX690BinaryRealNumber.d.ts → utils/encodeX690BinaryRealNumber.d.mts} +0 -0
  415. /package/dist/{node/utils/getBitFromBase128.d.ts → utils/getBitFromBase128.d.mts} +0 -0
  416. /package/dist/{node/utils/getBitFromBase256.d.ts → utils/getBitFromBase256.d.mts} +0 -0
  417. /package/dist/{node/utils/setBitInBase128.d.ts → utils/setBitInBase128.d.mts} +0 -0
  418. /package/dist/{node/utils/setBitInBase256.d.ts → utils/setBitInBase256.d.mts} +0 -0
  419. /package/dist/{node/utils/splitOctetsCanonically.d.ts → utils/splitOctetsCanonically.d.mts} +0 -0
  420. /package/dist/{node/utils/trimLeadingPaddingBytes.d.ts → utils/trimLeadingPaddingBytes.d.mts} +0 -0
  421. /package/dist/{node/validators/isGeneralCharacter.d.ts → validators/isGeneralCharacter.d.mts} +0 -0
  422. /package/dist/{node/validators/isGraphicCharacter.d.ts → validators/isGraphicCharacter.d.mts} +0 -0
  423. /package/dist/{node/validators/isNumericCharacter.d.ts → validators/isNumericCharacter.d.mts} +0 -0
  424. /package/dist/{node/validators/isObjectDescriptorCharacter.d.ts → validators/isObjectDescriptorCharacter.d.mts} +0 -0
  425. /package/dist/{node/validators/isPrintableCharacter.d.ts → validators/isPrintableCharacter.d.mts} +0 -0
  426. /package/dist/{node/validators/isVisibleCharacter.d.ts → validators/isVisibleCharacter.d.mts} +0 -0
  427. /package/dist/{node/validators/validateDate.d.ts → validators/validateDate.d.mts} +0 -0
  428. /package/dist/{node/validators/validateDateTime.d.ts → validators/validateDateTime.d.mts} +0 -0
  429. /package/dist/{node/validators/validateTime.d.ts → validators/validateTime.d.mts} +0 -0
  430. /package/dist/{node/values.d.ts → values.d.mts} +0 -0
@@ -1,89 +1,53 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- var __importDefault = (this && this.__importDefault) || function (mod) {
36
- return (mod && mod.__esModule) ? mod : { "default": mod };
37
- };
38
- Object.defineProperty(exports, "__esModule", { value: true });
39
- const asn1_1 = __importDefault(require("../asn1"));
40
- const errors = __importStar(require("../errors"));
41
- const values_1 = require("../values");
42
- const convertBytesToText_1 = __importDefault(require("../utils/convertBytesToText"));
43
- const convertTextToBytes_1 = __importDefault(require("../utils/convertTextToBytes"));
44
- const sortCanonically_1 = __importDefault(require("../utils/sortCanonically"));
45
- const ObjectIdentifier_1 = __importDefault(require("../types/ObjectIdentifier"));
46
- const encodeBoolean_1 = __importDefault(require("./x690/encoders/encodeBoolean"));
47
- const decodeBoolean_1 = __importDefault(require("./der/decoders/decodeBoolean"));
48
- const encodeBitString_1 = __importDefault(require("./x690/encoders/encodeBitString"));
49
- const decodeBitString_1 = __importDefault(require("./der/decoders/decodeBitString"));
50
- const encodeReal_1 = __importDefault(require("./x690/encoders/encodeReal"));
51
- const decodeReal_1 = __importDefault(require("./der/decoders/decodeReal"));
52
- const encodeSequence_1 = __importDefault(require("./x690/encoders/encodeSequence"));
53
- const decodeSequence_1 = __importDefault(require("./der/decoders/decodeSequence"));
54
- const encodeUTCTime_1 = __importDefault(require("./x690/encoders/encodeUTCTime"));
55
- const decodeUTCTime_1 = __importDefault(require("./der/decoders/decodeUTCTime"));
56
- const encodeGeneralizedTime_1 = __importDefault(require("./x690/encoders/encodeGeneralizedTime"));
57
- const decodeGeneralizedTime_1 = __importDefault(require("./der/decoders/decodeGeneralizedTime"));
58
- const encodeExternal_1 = __importDefault(require("../codecs/x690/encoders/encodeExternal"));
59
- const encodeEmbeddedPDV_1 = __importDefault(require("../codecs/x690/encoders/encodeEmbeddedPDV"));
60
- const encodeCharacterString_1 = __importDefault(require("../codecs/x690/encoders/encodeCharacterString"));
61
- const decodeExternal_1 = __importDefault(require("../codecs/x690/decoders/decodeExternal"));
62
- const decodeEmbeddedPDV_1 = __importDefault(require("../codecs/x690/decoders/decodeEmbeddedPDV"));
63
- const decodeCharacterString_1 = __importDefault(require("../codecs/x690/decoders/decodeCharacterString"));
64
- const encodeGraphicString_1 = __importDefault(require("../codecs/ber/encoders/encodeGraphicString"));
65
- const encodeNumericString_1 = __importDefault(require("../codecs/ber/encoders/encodeNumericString"));
66
- const encodeObjectDescriptor_1 = __importDefault(require("../codecs/ber/encoders/encodeObjectDescriptor"));
67
- const encodePrintableString_1 = __importDefault(require("../codecs/ber/encoders/encodePrintableString"));
68
- const encodeVisibleString_1 = __importDefault(require("../codecs/ber/encoders/encodeVisibleString"));
69
- const encodeGeneralString_1 = __importDefault(require("../codecs/ber/encoders/encodeGeneralString"));
70
- const decodeGraphicString_1 = __importDefault(require("../codecs/x690/decoders/decodeGraphicString"));
71
- const decodeNumericString_1 = __importDefault(require("../codecs/x690/decoders/decodeNumericString"));
72
- const decodeObjectDescriptor_1 = __importDefault(require("../codecs/x690/decoders/decodeObjectDescriptor"));
73
- const decodePrintableString_1 = __importDefault(require("../codecs/x690/decoders/decodePrintableString"));
74
- const decodeVisibleString_1 = __importDefault(require("../codecs/x690/decoders/decodeVisibleString"));
75
- const decodeGeneralString_1 = __importDefault(require("../codecs/x690/decoders/decodeGeneralString"));
76
- const encodeDuration_1 = __importDefault(require("../codecs/x690/encoders/encodeDuration"));
77
- const decodeDuration_1 = __importDefault(require("../codecs/der/decoders/decodeDuration"));
78
- const x690_1 = __importDefault(require("../x690"));
79
- const utils_1 = require("../utils");
80
- const node_buffer_1 = require("node:buffer");
81
- class DERElement extends x690_1.default {
1
+ import ASN1Element from "../asn1.mjs";
2
+ import * as errors from "../errors.mjs";
3
+ import { ASN1Construction, ASN1TagClass, ASN1UniversalType, } from "../values.mjs";
4
+ import convertBytesToText from "../utils/convertBytesToText.mjs";
5
+ import convertTextToBytes from "../utils/convertTextToBytes.mjs";
6
+ import sortCanonically from "../utils/sortCanonically.mjs";
7
+ import ObjectIdentifier from "../types/ObjectIdentifier.mjs";
8
+ import encodeBoolean from "./x690/encoders/encodeBoolean.mjs";
9
+ import decodeBoolean from "./der/decoders/decodeBoolean.mjs";
10
+ import encodeBitString from "./x690/encoders/encodeBitString.mjs";
11
+ import decodeBitString from "./der/decoders/decodeBitString.mjs";
12
+ import encodeReal from "./x690/encoders/encodeReal.mjs";
13
+ import decodeReal from "./der/decoders/decodeReal.mjs";
14
+ import encodeSequence from "./x690/encoders/encodeSequence.mjs";
15
+ import decodeSequence from "./der/decoders/decodeSequence.mjs";
16
+ import encodeUTCTime from "./x690/encoders/encodeUTCTime.mjs";
17
+ import decodeUTCTime from "./der/decoders/decodeUTCTime.mjs";
18
+ import encodeGeneralizedTime from "./x690/encoders/encodeGeneralizedTime.mjs";
19
+ import decodeGeneralizedTime from "./der/decoders/decodeGeneralizedTime.mjs";
20
+ import encodeExternal from "../codecs/x690/encoders/encodeExternal.mjs";
21
+ import encodeEmbeddedPDV from "../codecs/x690/encoders/encodeEmbeddedPDV.mjs";
22
+ import encodeCharacterString from "../codecs/x690/encoders/encodeCharacterString.mjs";
23
+ import decodeExternal from "../codecs/x690/decoders/decodeExternal.mjs";
24
+ import decodeEmbeddedPDV from "../codecs/x690/decoders/decodeEmbeddedPDV.mjs";
25
+ import decodeCharacterString from "../codecs/x690/decoders/decodeCharacterString.mjs";
26
+ import encodeGraphicString from "../codecs/ber/encoders/encodeGraphicString.mjs";
27
+ import encodeNumericString from "../codecs/ber/encoders/encodeNumericString.mjs";
28
+ import encodeObjectDescriptor from "../codecs/ber/encoders/encodeObjectDescriptor.mjs";
29
+ import encodePrintableString from "../codecs/ber/encoders/encodePrintableString.mjs";
30
+ import encodeVisibleString from "../codecs/ber/encoders/encodeVisibleString.mjs";
31
+ import encodeGeneralString from "../codecs/ber/encoders/encodeGeneralString.mjs";
32
+ import decodeGraphicString from "../codecs/x690/decoders/decodeGraphicString.mjs";
33
+ import decodeNumericString from "../codecs/x690/decoders/decodeNumericString.mjs";
34
+ import decodeObjectDescriptor from "../codecs/x690/decoders/decodeObjectDescriptor.mjs";
35
+ import decodePrintableString from "../codecs/x690/decoders/decodePrintableString.mjs";
36
+ import decodeVisibleString from "../codecs/x690/decoders/decodeVisibleString.mjs";
37
+ import decodeGeneralString from "../codecs/x690/decoders/decodeGeneralString.mjs";
38
+ import encodeDuration from "../codecs/x690/encoders/encodeDuration.mjs";
39
+ import decodeDuration from "../codecs/der/decoders/decodeDuration.mjs";
40
+ import X690Element from "../x690.mjs";
41
+ import { isUniquelyTagged } from "../utils/index.mjs";
42
+ import { Buffer } from "node:buffer";
43
+ export default class DERElement extends X690Element {
44
+ _value = new Uint8Array(0);
45
+ _currentValueLength;
82
46
  get value() {
83
47
  if (this._value instanceof Uint8Array) {
84
48
  return this._value;
85
49
  }
86
- const bytes = (0, encodeSequence_1.default)(this._value);
50
+ const bytes = encodeSequence(this._value);
87
51
  this._value = bytes;
88
52
  return bytes;
89
53
  }
@@ -96,112 +60,112 @@ class DERElement extends x690_1.default {
96
60
  this._value = els;
97
61
  }
98
62
  set boolean(value) {
99
- this.value = (0, encodeBoolean_1.default)(value);
63
+ this.value = encodeBoolean(value);
100
64
  }
101
65
  get boolean() {
102
- if (this.construction !== values_1.ASN1Construction.primitive) {
66
+ if (this.construction !== ASN1Construction.primitive) {
103
67
  throw new errors.ASN1ConstructionError("BOOLEAN cannot be constructed.", this);
104
68
  }
105
- return (0, decodeBoolean_1.default)(this.value);
69
+ return decodeBoolean(this.value);
106
70
  }
107
71
  set bitString(value) {
108
- this.value = (0, encodeBitString_1.default)(value);
72
+ this.value = encodeBitString(value);
109
73
  }
110
74
  get bitString() {
111
- if (this.construction !== values_1.ASN1Construction.primitive) {
75
+ if (this.construction !== ASN1Construction.primitive) {
112
76
  throw new errors.ASN1ConstructionError("BIT STRING cannot be constructed.", this);
113
77
  }
114
- return (0, decodeBitString_1.default)(this.value);
78
+ return decodeBitString(this.value);
115
79
  }
116
80
  set octetString(value) {
117
81
  this.value = new Uint8Array(value);
118
82
  }
119
83
  get octetString() {
120
- if (this.construction !== values_1.ASN1Construction.primitive) {
84
+ if (this.construction !== ASN1Construction.primitive) {
121
85
  throw new errors.ASN1ConstructionError("OCTET STRING cannot be constructed.", this);
122
86
  }
123
87
  return new Uint8Array(this.value);
124
88
  }
125
89
  set objectDescriptor(value) {
126
- this.value = (0, encodeObjectDescriptor_1.default)(value);
90
+ this.value = encodeObjectDescriptor(value);
127
91
  }
128
92
  get objectDescriptor() {
129
- return (0, decodeObjectDescriptor_1.default)(this.value);
93
+ return decodeObjectDescriptor(this.value);
130
94
  }
131
95
  set external(value) {
132
- this.value = (0, encodeExternal_1.default)(value);
133
- this.construction = values_1.ASN1Construction.constructed;
96
+ this.value = encodeExternal(value);
97
+ this.construction = ASN1Construction.constructed;
134
98
  }
135
99
  get external() {
136
- if (this.construction !== values_1.ASN1Construction.constructed) {
100
+ if (this.construction !== ASN1Construction.constructed) {
137
101
  throw new errors.ASN1ConstructionError("EXTERNAL cannot be primitively-constructed.", this);
138
102
  }
139
- return (0, decodeExternal_1.default)(this.value);
103
+ return decodeExternal(this.value);
140
104
  }
141
105
  set real(value) {
142
- this.value = (0, encodeReal_1.default)(value);
106
+ this.value = encodeReal(value);
143
107
  }
144
108
  get real() {
145
- if (this.construction !== values_1.ASN1Construction.primitive) {
109
+ if (this.construction !== ASN1Construction.primitive) {
146
110
  throw new errors.ASN1ConstructionError("REAL cannot be constructed.", this);
147
111
  }
148
- return (0, decodeReal_1.default)(this.value);
112
+ return decodeReal(this.value);
149
113
  }
150
114
  set embeddedPDV(value) {
151
- this.value = (0, encodeEmbeddedPDV_1.default)(value);
152
- this.construction = values_1.ASN1Construction.constructed;
115
+ this.value = encodeEmbeddedPDV(value);
116
+ this.construction = ASN1Construction.constructed;
153
117
  }
154
118
  get embeddedPDV() {
155
- if (this.construction !== values_1.ASN1Construction.constructed) {
119
+ if (this.construction !== ASN1Construction.constructed) {
156
120
  throw new errors.ASN1ConstructionError("EMBEDDED PDV cannot be primitively-constructed.", this);
157
121
  }
158
- return (0, decodeEmbeddedPDV_1.default)(this.value);
122
+ return decodeEmbeddedPDV(this.value);
159
123
  }
160
124
  set utf8String(value) {
161
- this.value = (0, convertTextToBytes_1.default)(value);
125
+ this.value = convertTextToBytes(value);
162
126
  }
163
127
  get utf8String() {
164
- if (this.construction !== values_1.ASN1Construction.primitive) {
128
+ if (this.construction !== ASN1Construction.primitive) {
165
129
  throw new errors.ASN1ConstructionError("UTF8String cannot be constructed.", this);
166
130
  }
167
- return (0, convertBytesToText_1.default)(this.value);
131
+ return convertBytesToText(this.value);
168
132
  }
169
133
  set sequence(value) {
170
134
  this.construct(value);
171
- this.construction = values_1.ASN1Construction.constructed;
135
+ this.construction = ASN1Construction.constructed;
172
136
  }
173
137
  get sequence() {
174
- if (this.construction !== values_1.ASN1Construction.constructed) {
138
+ if (this.construction !== ASN1Construction.constructed) {
175
139
  throw new errors.ASN1ConstructionError("SET or SEQUENCE cannot be primitively constructed.", this);
176
140
  }
177
141
  if (Array.isArray(this._value)) {
178
142
  return this._value;
179
143
  }
180
- return (0, decodeSequence_1.default)(this.value);
144
+ return decodeSequence(this.value);
181
145
  }
182
146
  set set(value) {
183
- (0, sortCanonically_1.default)(value);
147
+ sortCanonically(value);
184
148
  this.sequence = value;
185
149
  }
186
150
  get set() {
187
151
  const ret = this.sequence;
188
- if (!(0, utils_1.isUniquelyTagged)(ret)) {
152
+ if (!isUniquelyTagged(ret)) {
189
153
  throw new errors.ASN1ConstructionError("Duplicate tag in SET.", this);
190
154
  }
191
155
  return ret;
192
156
  }
193
157
  set sequenceOf(value) {
194
158
  this.construct(value);
195
- this.construction = values_1.ASN1Construction.constructed;
159
+ this.construction = ASN1Construction.constructed;
196
160
  }
197
161
  get sequenceOf() {
198
- if (this.construction !== values_1.ASN1Construction.constructed) {
162
+ if (this.construction !== ASN1Construction.constructed) {
199
163
  throw new errors.ASN1ConstructionError("SET or SEQUENCE cannot be primitively constructed.", this);
200
164
  }
201
165
  if (Array.isArray(this._value)) {
202
166
  return this._value;
203
167
  }
204
- return (0, decodeSequence_1.default)(this.value);
168
+ return decodeSequence(this.value);
205
169
  }
206
170
  set setOf(value) {
207
171
  this.sequence = value;
@@ -210,22 +174,22 @@ class DERElement extends x690_1.default {
210
174
  return this.sequence;
211
175
  }
212
176
  set numericString(value) {
213
- this.value = (0, encodeNumericString_1.default)(value);
177
+ this.value = encodeNumericString(value);
214
178
  }
215
179
  get numericString() {
216
- if (this.construction !== values_1.ASN1Construction.primitive) {
180
+ if (this.construction !== ASN1Construction.primitive) {
217
181
  throw new errors.ASN1ConstructionError("NumericString cannot be constructed.", this);
218
182
  }
219
- return (0, decodeNumericString_1.default)(this.value);
183
+ return decodeNumericString(this.value);
220
184
  }
221
185
  set printableString(value) {
222
- this.value = (0, encodePrintableString_1.default)(value);
186
+ this.value = encodePrintableString(value);
223
187
  }
224
188
  get printableString() {
225
- if (this.construction !== values_1.ASN1Construction.primitive) {
189
+ if (this.construction !== ASN1Construction.primitive) {
226
190
  throw new errors.ASN1ConstructionError("PrintableString cannot be constructed.", this);
227
191
  }
228
- return (0, decodePrintableString_1.default)(this.value);
192
+ return decodePrintableString(this.value);
229
193
  }
230
194
  set teletexString(value) {
231
195
  this.value = new Uint8Array(value);
@@ -240,65 +204,65 @@ class DERElement extends x690_1.default {
240
204
  return this.octetString;
241
205
  }
242
206
  set ia5String(value) {
243
- this.value = (0, convertTextToBytes_1.default)(value);
207
+ this.value = convertTextToBytes(value);
244
208
  }
245
209
  get ia5String() {
246
- if (this.construction !== values_1.ASN1Construction.primitive) {
210
+ if (this.construction !== ASN1Construction.primitive) {
247
211
  throw new errors.ASN1ConstructionError("IA5String cannot be constructed.", this);
248
212
  }
249
- return (0, convertBytesToText_1.default)(this.value);
213
+ return convertBytesToText(this.value);
250
214
  }
251
215
  set utcTime(value) {
252
- this.value = (0, encodeUTCTime_1.default)(value);
216
+ this.value = encodeUTCTime(value);
253
217
  }
254
218
  get utcTime() {
255
- if (this.construction !== values_1.ASN1Construction.primitive) {
219
+ if (this.construction !== ASN1Construction.primitive) {
256
220
  throw new errors.ASN1ConstructionError("UTCTime cannot be constructed.", this);
257
221
  }
258
- return (0, decodeUTCTime_1.default)(this.value);
222
+ return decodeUTCTime(this.value);
259
223
  }
260
224
  set generalizedTime(value) {
261
- this.value = (0, encodeGeneralizedTime_1.default)(value);
225
+ this.value = encodeGeneralizedTime(value);
262
226
  }
263
227
  get generalizedTime() {
264
- if (this.construction !== values_1.ASN1Construction.primitive) {
228
+ if (this.construction !== ASN1Construction.primitive) {
265
229
  throw new errors.ASN1ConstructionError("GeneralizedTime cannot be constructed.", this);
266
230
  }
267
- return (0, decodeGeneralizedTime_1.default)(this.value);
231
+ return decodeGeneralizedTime(this.value);
268
232
  }
269
233
  set graphicString(value) {
270
- this.value = (0, encodeGraphicString_1.default)(value);
234
+ this.value = encodeGraphicString(value);
271
235
  }
272
236
  get graphicString() {
273
- if (this.construction !== values_1.ASN1Construction.primitive) {
237
+ if (this.construction !== ASN1Construction.primitive) {
274
238
  throw new errors.ASN1ConstructionError("GraphicString cannot be constructed.", this);
275
239
  }
276
- return (0, decodeGraphicString_1.default)(this.value);
240
+ return decodeGraphicString(this.value);
277
241
  }
278
242
  set visibleString(value) {
279
- this.value = (0, encodeVisibleString_1.default)(value);
243
+ this.value = encodeVisibleString(value);
280
244
  }
281
245
  get visibleString() {
282
- return (0, decodeVisibleString_1.default)(this.value);
246
+ return decodeVisibleString(this.value);
283
247
  }
284
248
  set generalString(value) {
285
- this.value = (0, encodeGeneralString_1.default)(value);
249
+ this.value = encodeGeneralString(value);
286
250
  }
287
251
  get generalString() {
288
- if (this.construction !== values_1.ASN1Construction.primitive) {
252
+ if (this.construction !== ASN1Construction.primitive) {
289
253
  throw new errors.ASN1ConstructionError("GeneralString cannot be constructed.", this);
290
254
  }
291
- return (0, decodeGeneralString_1.default)(this.value);
255
+ return decodeGeneralString(this.value);
292
256
  }
293
257
  set characterString(value) {
294
- this.value = (0, encodeCharacterString_1.default)(value);
295
- this.construction = values_1.ASN1Construction.constructed;
258
+ this.value = encodeCharacterString(value);
259
+ this.construction = ASN1Construction.constructed;
296
260
  }
297
261
  get characterString() {
298
- if (this.construction !== values_1.ASN1Construction.constructed) {
262
+ if (this.construction !== ASN1Construction.constructed) {
299
263
  throw new errors.ASN1ConstructionError("CHARACTER STRING cannot be primitively-constructed.", this);
300
264
  }
301
- return (0, decodeCharacterString_1.default)(this.value);
265
+ return decodeCharacterString(this.value);
302
266
  }
303
267
  set universalString(value) {
304
268
  const buf = new Uint8Array(value.length << 2);
@@ -311,7 +275,7 @@ class DERElement extends x690_1.default {
311
275
  this.value = buf;
312
276
  }
313
277
  get universalString() {
314
- if (this.construction !== values_1.ASN1Construction.primitive) {
278
+ if (this.construction !== ASN1Construction.primitive) {
315
279
  throw new errors.ASN1ConstructionError("UniversalString cannot be constructed.", this);
316
280
  }
317
281
  if (this.value.length % 4) {
@@ -335,13 +299,13 @@ class DERElement extends x690_1.default {
335
299
  this.value = buf;
336
300
  }
337
301
  get bmpString() {
338
- if (this.construction !== values_1.ASN1Construction.primitive) {
302
+ if (this.construction !== ASN1Construction.primitive) {
339
303
  throw new errors.ASN1ConstructionError("BMPString cannot be constructed.", this);
340
304
  }
341
305
  if (this.value.length % 2)
342
306
  throw new errors.ASN1Error("BMPString encoded on non-mulitple of two bytes.", this);
343
- if (typeof node_buffer_1.Buffer !== "undefined") {
344
- const swappedEndianness = node_buffer_1.Buffer.allocUnsafe(this.value.length);
307
+ if (typeof Buffer !== "undefined") {
308
+ const swappedEndianness = Buffer.allocUnsafe(this.value.length);
345
309
  for (let i = 0; i < this.value.length; i += 2) {
346
310
  swappedEndianness[i] = this.value[i + 1];
347
311
  swappedEndianness[i + 1] = this.value[i];
@@ -356,10 +320,10 @@ class DERElement extends x690_1.default {
356
320
  }
357
321
  }
358
322
  set duration(value) {
359
- this.value = (0, encodeDuration_1.default)(value);
323
+ this.value = encodeDuration(value);
360
324
  }
361
325
  get duration() {
362
- return (0, decodeDuration_1.default)(this.value);
326
+ return decodeDuration(this.value);
363
327
  }
364
328
  encode(value) {
365
329
  switch (typeof value) {
@@ -368,52 +332,52 @@ class DERElement extends x690_1.default {
368
332
  break;
369
333
  }
370
334
  case ("boolean"): {
371
- this.tagNumber = values_1.ASN1UniversalType.boolean;
335
+ this.tagNumber = ASN1UniversalType.boolean;
372
336
  this.boolean = value;
373
337
  break;
374
338
  }
375
339
  case ("number"): {
376
340
  if (Number.isInteger(value)) {
377
- this.tagNumber = values_1.ASN1UniversalType.integer;
341
+ this.tagNumber = ASN1UniversalType.integer;
378
342
  this.integer = value;
379
343
  }
380
344
  else {
381
- this.tagNumber = values_1.ASN1UniversalType.realNumber;
345
+ this.tagNumber = ASN1UniversalType.realNumber;
382
346
  this.real = value;
383
347
  }
384
348
  break;
385
349
  }
386
350
  case ("bigint"): {
387
- this.tagNumber = values_1.ASN1UniversalType.integer;
351
+ this.tagNumber = ASN1UniversalType.integer;
388
352
  this.integer = value;
389
353
  break;
390
354
  }
391
355
  case ("string"): {
392
- this.tagNumber = values_1.ASN1UniversalType.utf8String;
356
+ this.tagNumber = ASN1UniversalType.utf8String;
393
357
  this.utf8String = value;
394
358
  break;
395
359
  }
396
360
  case ("object"): {
397
361
  if (!value) {
398
- this.tagNumber = values_1.ASN1UniversalType.nill;
362
+ this.tagNumber = ASN1UniversalType.nill;
399
363
  this.value = new Uint8Array(0);
400
364
  }
401
365
  else if (value instanceof Uint8Array) {
402
- this.tagNumber = values_1.ASN1UniversalType.octetString;
366
+ this.tagNumber = ASN1UniversalType.octetString;
403
367
  this.octetString = value;
404
368
  }
405
369
  else if (value instanceof Uint8ClampedArray) {
406
- this.tagNumber = values_1.ASN1UniversalType.bitString;
370
+ this.tagNumber = ASN1UniversalType.bitString;
407
371
  this.bitString = value;
408
372
  }
409
- else if (value instanceof asn1_1.default) {
410
- this.construction = values_1.ASN1Construction.constructed;
373
+ else if (value instanceof ASN1Element) {
374
+ this.construction = ASN1Construction.constructed;
411
375
  this.sequence = [value];
412
376
  }
413
377
  else if (value instanceof Set) {
414
- this.construction = values_1.ASN1Construction.constructed;
378
+ this.construction = ASN1Construction.constructed;
415
379
  this.set = Array.from(value).map((v) => {
416
- if (typeof v === "object" && v instanceof asn1_1.default) {
380
+ if (typeof v === "object" && v instanceof ASN1Element) {
417
381
  return v;
418
382
  }
419
383
  else {
@@ -423,13 +387,13 @@ class DERElement extends x690_1.default {
423
387
  }
424
388
  });
425
389
  }
426
- else if ((value instanceof ObjectIdentifier_1.default) || (value.constructor?.name === "ObjectIdentifier")) {
427
- this.tagNumber = values_1.ASN1UniversalType.objectIdentifier;
390
+ else if ((value instanceof ObjectIdentifier) || (value.constructor?.name === "ObjectIdentifier")) {
391
+ this.tagNumber = ASN1UniversalType.objectIdentifier;
428
392
  this.objectIdentifier = value;
429
393
  }
430
394
  else if (Array.isArray(value)) {
431
- this.construction = values_1.ASN1Construction.constructed;
432
- this.tagNumber = values_1.ASN1UniversalType.sequence;
395
+ this.construction = ASN1Construction.constructed;
396
+ this.tagNumber = ASN1UniversalType.sequence;
433
397
  this.sequence = value.map((sub) => {
434
398
  const ret = new DERElement();
435
399
  ret.encode(sub);
@@ -450,22 +414,22 @@ class DERElement extends x690_1.default {
450
414
  }
451
415
  }
452
416
  static fromSequence(sequence) {
453
- const ret = new DERElement(values_1.ASN1TagClass.universal, values_1.ASN1Construction.constructed, values_1.ASN1UniversalType.sequence);
417
+ const ret = new DERElement(ASN1TagClass.universal, ASN1Construction.constructed, ASN1UniversalType.sequence);
454
418
  ret.sequence = sequence.filter((element) => Boolean(element));
455
419
  return ret;
456
420
  }
457
421
  static fromSet(set) {
458
- const ret = new DERElement(values_1.ASN1TagClass.universal, values_1.ASN1Construction.constructed, values_1.ASN1UniversalType.set);
422
+ const ret = new DERElement(ASN1TagClass.universal, ASN1Construction.constructed, ASN1UniversalType.set);
459
423
  ret.set = set.filter((element) => Boolean(element));
460
424
  return ret;
461
425
  }
462
426
  static fromSetOf(set) {
463
- const ret = new DERElement(values_1.ASN1TagClass.universal, values_1.ASN1Construction.constructed, values_1.ASN1UniversalType.set);
427
+ const ret = new DERElement(ASN1TagClass.universal, ASN1Construction.constructed, ASN1UniversalType.set);
464
428
  ret.setOf = set.filter((element) => Boolean(element));
465
429
  return ret;
466
430
  }
467
431
  get inner() {
468
- if (this.construction !== values_1.ASN1Construction.constructed) {
432
+ if (this.construction !== ASN1Construction.constructed) {
469
433
  throw new errors.ASN1ConstructionError("An explicitly-encoded element cannot be encoded using "
470
434
  + "primitive construction.", this);
471
435
  }
@@ -486,12 +450,11 @@ class DERElement extends x690_1.default {
486
450
  return ret;
487
451
  }
488
452
  set inner(value) {
489
- this.construction = values_1.ASN1Construction.constructed;
453
+ this.construction = ASN1Construction.constructed;
490
454
  this._value = [value];
491
455
  }
492
- constructor(tagClass = values_1.ASN1TagClass.universal, construction = values_1.ASN1Construction.primitive, tagNumber = values_1.ASN1UniversalType.endOfContent, value = undefined) {
456
+ constructor(tagClass = ASN1TagClass.universal, construction = ASN1Construction.primitive, tagNumber = ASN1UniversalType.endOfContent, value = undefined) {
493
457
  super();
494
- this._value = new Uint8Array(0);
495
458
  this.encode(value);
496
459
  this.tagClass = tagClass;
497
460
  this.construction = construction;
@@ -504,21 +467,21 @@ class DERElement extends x690_1.default {
504
467
  let cursor = 0;
505
468
  switch (bytes[cursor] & 0b11000000) {
506
469
  case (0b00000000):
507
- this.tagClass = values_1.ASN1TagClass.universal;
470
+ this.tagClass = ASN1TagClass.universal;
508
471
  break;
509
472
  case (0b01000000):
510
- this.tagClass = values_1.ASN1TagClass.application;
473
+ this.tagClass = ASN1TagClass.application;
511
474
  break;
512
475
  case (0b10000000):
513
- this.tagClass = values_1.ASN1TagClass.context;
476
+ this.tagClass = ASN1TagClass.context;
514
477
  break;
515
478
  case (0b11000000):
516
- this.tagClass = values_1.ASN1TagClass.private;
479
+ this.tagClass = ASN1TagClass.private;
517
480
  break;
518
- default: this.tagClass = values_1.ASN1TagClass.universal;
481
+ default: this.tagClass = ASN1TagClass.universal;
519
482
  }
520
483
  this.construction = ((bytes[cursor] & 0b00100000)
521
- ? values_1.ASN1Construction.constructed : values_1.ASN1Construction.primitive);
484
+ ? ASN1Construction.constructed : ASN1Construction.primitive);
522
485
  this.tagNumber = (bytes[cursor] & 0b00011111);
523
486
  cursor++;
524
487
  if (this.tagNumber >= 31) {
@@ -695,4 +658,3 @@ class DERElement extends x690_1.default {
695
658
  + value_len);
696
659
  }
697
660
  }
698
- exports.default = DERElement;
@@ -1,2 +1,2 @@
1
- import CharacterString from "../../../types/CharacterString";
1
+ import CharacterString from "../../../types/CharacterString.mjs";
2
2
  export default function decodeCharacterString(value: Uint8Array): CharacterString;
@@ -0,0 +1,12 @@
1
+ import CharacterString from "../../../types/CharacterString.mjs";
2
+ import decodeSequence from "../../der/decoders/decodeSequence.mjs";
3
+ import { ASN1ConstructionError } from "../../../errors.mjs";
4
+ export default function decodeCharacterString(value) {
5
+ const components = decodeSequence(value);
6
+ if (components.length !== 2) {
7
+ throw new ASN1ConstructionError(`CharacterString must contain 2 components, not ${components.length}.`);
8
+ }
9
+ const identification = components[0];
10
+ const stringValue = components[1].octetString;
11
+ return new CharacterString(identification, stringValue);
12
+ }
@@ -1,2 +1,2 @@
1
- import { DATE } from "../../../macros";
1
+ import { DATE } from "../../../macros.mjs";
2
2
  export default function decodeDate(bytes: Uint8Array): DATE;
@@ -0,0 +1,10 @@
1
+ import convertBytesToText from "../../../utils/convertBytesToText.mjs";
2
+ import validateDate from "../../../validators/validateDate.mjs";
3
+ export default function decodeDate(bytes) {
4
+ const str = convertBytesToText(bytes);
5
+ const year = parseInt(str.slice(0, 4), 10);
6
+ const month = parseInt(str.slice(4, 6), 10) - 1;
7
+ const day = parseInt(str.slice(6, 8), 10);
8
+ validateDate("DATE", year, month, day);
9
+ return new Date(year, month, day);
10
+ }
@@ -1,2 +1,2 @@
1
- import { DATE_TIME } from "../../../macros";
1
+ import { DATE_TIME } from "../../../macros.mjs";
2
2
  export default function decodeDateTime(bytes: Uint8Array): DATE_TIME;