@digitaldefiance/ecies-lib 3.0.8 → 3.7.3

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 (303) hide show
  1. package/README.md +475 -0
  2. package/package.json +4 -3
  3. package/src/builders/ecies-builder.js +5 -9
  4. package/src/builders/ecies-builder.js.map +1 -1
  5. package/src/builders/index.js +2 -5
  6. package/src/builders/index.js.map +1 -1
  7. package/src/builders/member-builder.js +12 -16
  8. package/src/builders/member-builder.js.map +1 -1
  9. package/src/constants.d.ts +14 -0
  10. package/src/constants.d.ts.map +1 -1
  11. package/src/constants.js +150 -74
  12. package/src/constants.js.map +1 -1
  13. package/src/core/errors/crypto-error.js +10 -14
  14. package/src/core/errors/crypto-error.js.map +1 -1
  15. package/src/core/index.js +2 -5
  16. package/src/core/index.js.map +1 -1
  17. package/src/core/types/result.js +1 -5
  18. package/src/core/types/result.js.map +1 -1
  19. package/src/email-string.js +8 -13
  20. package/src/email-string.js.map +1 -1
  21. package/src/enumerations/disposed-error-type.d.ts +12 -0
  22. package/src/enumerations/disposed-error-type.d.ts.map +1 -0
  23. package/src/enumerations/disposed-error-type.js +13 -0
  24. package/src/enumerations/disposed-error-type.js.map +1 -0
  25. package/src/enumerations/ecies-encryption-type.js +20 -27
  26. package/src/enumerations/ecies-encryption-type.js.map +1 -1
  27. package/src/enumerations/ecies-error-type.js +2 -5
  28. package/src/enumerations/ecies-error-type.js.map +1 -1
  29. package/src/enumerations/ecies-string-key.d.ts +19 -1
  30. package/src/enumerations/ecies-string-key.d.ts.map +1 -1
  31. package/src/enumerations/ecies-string-key.js +21 -5
  32. package/src/enumerations/ecies-string-key.js.map +1 -1
  33. package/src/enumerations/guid-brand-type.d.ts +27 -0
  34. package/src/enumerations/guid-brand-type.d.ts.map +1 -0
  35. package/src/enumerations/guid-brand-type.js +28 -0
  36. package/src/enumerations/guid-brand-type.js.map +1 -0
  37. package/src/enumerations/guid-error-type.d.ts +7 -0
  38. package/src/enumerations/guid-error-type.d.ts.map +1 -0
  39. package/src/enumerations/guid-error-type.js +8 -0
  40. package/src/enumerations/guid-error-type.js.map +1 -0
  41. package/src/enumerations/id-provider-error-type.d.ts +43 -0
  42. package/src/enumerations/id-provider-error-type.d.ts.map +1 -0
  43. package/src/enumerations/id-provider-error-type.js +44 -0
  44. package/src/enumerations/id-provider-error-type.js.map +1 -0
  45. package/src/enumerations/index.d.ts +3 -0
  46. package/src/enumerations/index.d.ts.map +1 -1
  47. package/src/enumerations/index.js +15 -15
  48. package/src/enumerations/index.js.map +1 -1
  49. package/src/enumerations/invalid-email-type.js +2 -5
  50. package/src/enumerations/invalid-email-type.js.map +1 -1
  51. package/src/enumerations/length-encoding-type.js +2 -5
  52. package/src/enumerations/length-encoding-type.js.map +1 -1
  53. package/src/enumerations/length-error-type.js +2 -5
  54. package/src/enumerations/length-error-type.js.map +1 -1
  55. package/src/enumerations/member-error-type.js +3 -6
  56. package/src/enumerations/member-error-type.js.map +1 -1
  57. package/src/enumerations/member-type.js +3 -6
  58. package/src/enumerations/member-type.js.map +1 -1
  59. package/src/enumerations/password-login-error-type.js +2 -5
  60. package/src/enumerations/password-login-error-type.js.map +1 -1
  61. package/src/enumerations/pbkdf2-error-type.js +2 -5
  62. package/src/enumerations/pbkdf2-error-type.js.map +1 -1
  63. package/src/enumerations/pbkdf2-profile.js +2 -5
  64. package/src/enumerations/pbkdf2-profile.js.map +1 -1
  65. package/src/enumerations/secure-storage-error-type.js +2 -5
  66. package/src/enumerations/secure-storage-error-type.js.map +1 -1
  67. package/src/errors/disposed.d.ts +20 -2
  68. package/src/errors/disposed.d.ts.map +1 -1
  69. package/src/errors/disposed.js +24 -17
  70. package/src/errors/disposed.js.map +1 -1
  71. package/src/errors/ecies.d.ts +46 -1
  72. package/src/errors/ecies.d.ts.map +1 -1
  73. package/src/errors/ecies.js +65 -10
  74. package/src/errors/ecies.js.map +1 -1
  75. package/src/errors/guid.d.ts +44 -0
  76. package/src/errors/guid.d.ts.map +1 -0
  77. package/src/errors/guid.js +81 -0
  78. package/src/errors/guid.js.map +1 -0
  79. package/src/errors/id-provider.d.ts +23 -0
  80. package/src/errors/id-provider.d.ts.map +1 -0
  81. package/src/errors/id-provider.js +29 -0
  82. package/src/errors/id-provider.js.map +1 -0
  83. package/src/errors/index.d.ts +3 -0
  84. package/src/errors/index.d.ts.map +1 -1
  85. package/src/errors/index.js +9 -10
  86. package/src/errors/index.js.map +1 -1
  87. package/src/errors/invalid-email.js +5 -9
  88. package/src/errors/invalid-email.js.map +1 -1
  89. package/src/errors/length.js +5 -9
  90. package/src/errors/length.js.map +1 -1
  91. package/src/errors/member.js +5 -9
  92. package/src/errors/member.js.map +1 -1
  93. package/src/errors/pbkdf2.js +5 -9
  94. package/src/errors/pbkdf2.js.map +1 -1
  95. package/src/errors/secure-storage.js +6 -10
  96. package/src/errors/secure-storage.js.map +1 -1
  97. package/src/errors/simple-ecies.js +6 -10
  98. package/src/errors/simple-ecies.js.map +1 -1
  99. package/src/errors/simple-test-error.js +1 -5
  100. package/src/errors/simple-test-error.js.map +1 -1
  101. package/src/i18n-setup.js +29 -37
  102. package/src/i18n-setup.js.map +1 -1
  103. package/src/index.d.ts +10 -0
  104. package/src/index.d.ts.map +1 -1
  105. package/src/index.js +44 -57
  106. package/src/index.js.map +1 -1
  107. package/src/interfaces/checksum-config.js +1 -2
  108. package/src/interfaces/checksum-consts.js +1 -2
  109. package/src/interfaces/configuration-provenance.d.ts +51 -0
  110. package/src/interfaces/configuration-provenance.d.ts.map +1 -0
  111. package/src/interfaces/configuration-provenance.js +23 -0
  112. package/src/interfaces/configuration-provenance.js.map +1 -0
  113. package/src/interfaces/constants.d.ts +27 -1
  114. package/src/interfaces/constants.d.ts.map +1 -1
  115. package/src/interfaces/constants.js +1 -2
  116. package/src/interfaces/ecies-config.js +1 -2
  117. package/src/interfaces/ecies-consts.js +1 -2
  118. package/src/interfaces/ecies-file-service.js +1 -2
  119. package/src/interfaces/encrypted-chunk.js +1 -4
  120. package/src/interfaces/encrypted-chunk.js.map +1 -1
  121. package/src/interfaces/encryption-state.js +1 -4
  122. package/src/interfaces/encryption-state.js.map +1 -1
  123. package/src/interfaces/frontend-member-operational.js +1 -2
  124. package/src/interfaces/guid.d.ts +78 -0
  125. package/src/interfaces/guid.d.ts.map +1 -0
  126. package/src/interfaces/guid.js +2 -0
  127. package/src/interfaces/guid.js.map +1 -0
  128. package/src/interfaces/id-provider.d.ts +83 -0
  129. package/src/interfaces/id-provider.d.ts.map +1 -0
  130. package/src/interfaces/id-provider.js +35 -0
  131. package/src/interfaces/id-provider.js.map +1 -0
  132. package/src/interfaces/index.d.ts +1 -0
  133. package/src/interfaces/index.d.ts.map +1 -1
  134. package/src/interfaces/index.js +13 -15
  135. package/src/interfaces/index.js.map +1 -1
  136. package/src/interfaces/invariant.d.ts +46 -0
  137. package/src/interfaces/invariant.d.ts.map +1 -0
  138. package/src/interfaces/invariant.js +18 -0
  139. package/src/interfaces/invariant.js.map +1 -0
  140. package/src/interfaces/library-error.js +1 -2
  141. package/src/interfaces/member-storage.js +1 -2
  142. package/src/interfaces/member-with-mnemonic.js +1 -2
  143. package/src/interfaces/multi-recipient-chunk.d.ts +36 -12
  144. package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -1
  145. package/src/interfaces/multi-recipient-chunk.js +36 -14
  146. package/src/interfaces/multi-recipient-chunk.js.map +1 -1
  147. package/src/interfaces/pbkdf2-config.js +1 -2
  148. package/src/interfaces/pbkdf2-consts.js +1 -2
  149. package/src/interfaces/pbkdf2-result.js +1 -2
  150. package/src/interfaces/stream-config.js +1 -4
  151. package/src/interfaces/stream-config.js.map +1 -1
  152. package/src/interfaces/stream-header.js +1 -4
  153. package/src/interfaces/stream-header.js.map +1 -1
  154. package/src/interfaces/stream-progress.js +1 -2
  155. package/src/lib/crypto-container.js +9 -13
  156. package/src/lib/crypto-container.js.map +1 -1
  157. package/src/lib/guid.d.ts +344 -0
  158. package/src/lib/guid.d.ts.map +1 -0
  159. package/src/lib/guid.js +914 -0
  160. package/src/lib/guid.js.map +1 -0
  161. package/src/lib/id-providers/custom-provider.d.ts +36 -0
  162. package/src/lib/id-providers/custom-provider.d.ts.map +1 -0
  163. package/src/lib/id-providers/custom-provider.js +71 -0
  164. package/src/lib/id-providers/custom-provider.js.map +1 -0
  165. package/src/lib/id-providers/guidv4-provider.d.ts +46 -0
  166. package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
  167. package/src/lib/id-providers/guidv4-provider.js +105 -0
  168. package/src/lib/id-providers/guidv4-provider.js.map +1 -0
  169. package/src/lib/id-providers/index.d.ts +30 -0
  170. package/src/lib/id-providers/index.d.ts.map +1 -0
  171. package/src/lib/id-providers/index.js +29 -0
  172. package/src/lib/id-providers/index.js.map +1 -0
  173. package/src/lib/id-providers/objectid-provider.d.ts +33 -0
  174. package/src/lib/id-providers/objectid-provider.d.ts.map +1 -0
  175. package/src/lib/id-providers/objectid-provider.js +79 -0
  176. package/src/lib/id-providers/objectid-provider.js.map +1 -0
  177. package/src/lib/id-providers/uuid-provider.d.ts +42 -0
  178. package/src/lib/id-providers/uuid-provider.d.ts.map +1 -0
  179. package/src/lib/id-providers/uuid-provider.js +96 -0
  180. package/src/lib/id-providers/uuid-provider.js.map +1 -0
  181. package/src/lib/index.d.ts +1 -0
  182. package/src/lib/index.d.ts.map +1 -1
  183. package/src/lib/index.js +2 -4
  184. package/src/lib/index.js.map +1 -1
  185. package/src/lib/invariant-validator.d.ts +59 -0
  186. package/src/lib/invariant-validator.d.ts.map +1 -0
  187. package/src/lib/invariant-validator.js +97 -0
  188. package/src/lib/invariant-validator.js.map +1 -0
  189. package/src/lib/invariants/encryption-algorithm-consistency.d.ts +17 -0
  190. package/src/lib/invariants/encryption-algorithm-consistency.d.ts.map +1 -0
  191. package/src/lib/invariants/encryption-algorithm-consistency.js +49 -0
  192. package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -0
  193. package/src/lib/invariants/index.d.ts +4 -0
  194. package/src/lib/invariants/index.d.ts.map +1 -0
  195. package/src/lib/invariants/index.js +4 -0
  196. package/src/lib/invariants/index.js.map +1 -0
  197. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts +16 -0
  198. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts.map +1 -0
  199. package/src/lib/invariants/pbkdf2-profiles-validity.js +58 -0
  200. package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -0
  201. package/src/lib/invariants/recipient-id-consistency.d.ts +18 -0
  202. package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
  203. package/src/lib/invariants/recipient-id-consistency.js +31 -0
  204. package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
  205. package/src/member.js +43 -48
  206. package/src/member.js.map +1 -1
  207. package/src/pbkdf2-profiles.js +1 -2
  208. package/src/phone-number.js +7 -11
  209. package/src/phone-number.js.map +1 -1
  210. package/src/regexes.js +3 -6
  211. package/src/regexes.js.map +1 -1
  212. package/src/secure-buffer.d.ts +17 -1
  213. package/src/secure-buffer.d.ts.map +1 -1
  214. package/src/secure-buffer.js +40 -22
  215. package/src/secure-buffer.js.map +1 -1
  216. package/src/secure-string.js +20 -24
  217. package/src/secure-string.js.map +1 -1
  218. package/src/services/aes-gcm.js +21 -25
  219. package/src/services/aes-gcm.js.map +1 -1
  220. package/src/services/chunk-processor.js +32 -36
  221. package/src/services/chunk-processor.js.map +1 -1
  222. package/src/services/ecies/crypto-core.js +33 -37
  223. package/src/services/ecies/crypto-core.js.map +1 -1
  224. package/src/services/ecies/example.js +37 -44
  225. package/src/services/ecies/example.js.map +1 -1
  226. package/src/services/ecies/file.js +1 -5
  227. package/src/services/ecies/file.js.map +1 -1
  228. package/src/services/ecies/index.js +10 -15
  229. package/src/services/ecies/index.js.map +1 -1
  230. package/src/services/ecies/integration.js +23 -28
  231. package/src/services/ecies/integration.js.map +1 -1
  232. package/src/services/ecies/interfaces.js +1 -2
  233. package/src/services/ecies/interfaces.js.map +1 -1
  234. package/src/services/ecies/manual-test.js +26 -34
  235. package/src/services/ecies/manual-test.js.map +1 -1
  236. package/src/services/ecies/multi-recipient.js +47 -51
  237. package/src/services/ecies/multi-recipient.js.map +1 -1
  238. package/src/services/ecies/service.js +27 -31
  239. package/src/services/ecies/service.js.map +1 -1
  240. package/src/services/ecies/signature.js +9 -13
  241. package/src/services/ecies/signature.js.map +1 -1
  242. package/src/services/ecies/single-recipient.js +42 -46
  243. package/src/services/ecies/single-recipient.js.map +1 -1
  244. package/src/services/encryption-stream.d.ts +3 -1
  245. package/src/services/encryption-stream.d.ts.map +1 -1
  246. package/src/services/encryption-stream.js +46 -48
  247. package/src/services/encryption-stream.js.map +1 -1
  248. package/src/services/index.js +5 -8
  249. package/src/services/index.js.map +1 -1
  250. package/src/services/multi-recipient-processor.d.ts +12 -2
  251. package/src/services/multi-recipient-processor.d.ts.map +1 -1
  252. package/src/services/multi-recipient-processor.js +65 -56
  253. package/src/services/multi-recipient-processor.js.map +1 -1
  254. package/src/services/password-login.js +33 -37
  255. package/src/services/password-login.js.map +1 -1
  256. package/src/services/pbkdf2.js +8 -12
  257. package/src/services/pbkdf2.js.map +1 -1
  258. package/src/services/progress-tracker.js +5 -9
  259. package/src/services/progress-tracker.js.map +1 -1
  260. package/src/services/resumable-encryption.js +24 -28
  261. package/src/services/resumable-encryption.js.map +1 -1
  262. package/src/services/xor.js +1 -5
  263. package/src/services/xor.js.map +1 -1
  264. package/src/test-mocks/index.js +1 -4
  265. package/src/test-mocks/index.js.map +1 -1
  266. package/src/test-mocks/mock-frontend-member.js +20 -24
  267. package/src/test-mocks/mock-frontend-member.js.map +1 -1
  268. package/src/testing.js +1 -4
  269. package/src/testing.js.map +1 -1
  270. package/src/translations/de.d.ts +2 -1
  271. package/src/translations/de.d.ts.map +1 -1
  272. package/src/translations/de.js +190 -170
  273. package/src/translations/de.js.map +1 -1
  274. package/src/translations/en-US.d.ts +2 -1
  275. package/src/translations/en-US.d.ts.map +1 -1
  276. package/src/translations/en-US.js +190 -170
  277. package/src/translations/en-US.js.map +1 -1
  278. package/src/translations/es.d.ts +2 -1
  279. package/src/translations/es.d.ts.map +1 -1
  280. package/src/translations/es.js +190 -170
  281. package/src/translations/es.js.map +1 -1
  282. package/src/translations/fr.d.ts +2 -1
  283. package/src/translations/fr.d.ts.map +1 -1
  284. package/src/translations/fr.js +190 -170
  285. package/src/translations/fr.js.map +1 -1
  286. package/src/translations/ja.d.ts +2 -1
  287. package/src/translations/ja.d.ts.map +1 -1
  288. package/src/translations/ja.js +189 -170
  289. package/src/translations/ja.js.map +1 -1
  290. package/src/translations/uk.d.ts +2 -1
  291. package/src/translations/uk.d.ts.map +1 -1
  292. package/src/translations/uk.js +192 -170
  293. package/src/translations/uk.js.map +1 -1
  294. package/src/translations/zh-cn.d.ts +2 -1
  295. package/src/translations/zh-cn.d.ts.map +1 -1
  296. package/src/translations/zh-cn.js +189 -170
  297. package/src/translations/zh-cn.js.map +1 -1
  298. package/src/types/deep-partial.js +1 -2
  299. package/src/types.d.ts +31 -0
  300. package/src/types.d.ts.map +1 -1
  301. package/src/types.js +1 -2
  302. package/src/utils.js +59 -77
  303. package/src/utils.js.map +1 -1
package/src/utils.js CHANGED
@@ -1,101 +1,83 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.lengthEncodeData = lengthEncodeData;
4
- exports.decodeLengthEncodedData = decodeLengthEncodedData;
5
- exports.uint8ArrayToBase64 = uint8ArrayToBase64;
6
- exports.base64ToUint8Array = base64ToUint8Array;
7
- exports.uint8ArrayToHex = uint8ArrayToHex;
8
- exports.hexToUint8Array = hexToUint8Array;
9
- exports.crc16 = crc16;
10
- exports.stringToUint8Array = stringToUint8Array;
11
- exports.uint8ArrayToString = uint8ArrayToString;
12
- exports.randomBytes = randomBytes;
13
- exports.arraysEqual = arraysEqual;
14
- exports.concatUint8Arrays = concatUint8Arrays;
15
- exports.getLengthEncodingTypeForLength = getLengthEncodingTypeForLength;
16
- exports.getLengthEncodingTypeFromValue = getLengthEncodingTypeFromValue;
17
- exports.safeBigIntToNumber = safeBigIntToNumber;
18
- exports.getLengthForLengthType = getLengthForLengthType;
19
- const length_encoding_type_1 = require("./enumerations/length-encoding-type");
20
- const length_error_type_1 = require("./enumerations/length-error-type");
21
- const errors_1 = require("./errors");
22
- const i18n_setup_1 = require("./i18n-setup");
23
- const ecies_string_key_1 = require("./enumerations/ecies-string-key");
1
+ import { LengthEncodingType } from './enumerations/length-encoding-type';
2
+ import { LengthErrorType } from './enumerations/length-error-type';
3
+ import { LengthError } from './errors';
4
+ import { getEciesI18nEngine, EciesComponentId } from './i18n-setup';
5
+ import { EciesStringKey } from './enumerations/ecies-string-key';
24
6
  /**
25
7
  * Encodes the length of the data in the buffer
26
8
  * @param buffer The buffer to encode
27
9
  * @returns The encoded buffer
28
10
  */
29
- function lengthEncodeData(buffer) {
11
+ export function lengthEncodeData(buffer) {
30
12
  const lengthType = getLengthEncodingTypeForLength(buffer.length);
31
13
  const lengthTypeSize = getLengthForLengthType(lengthType);
32
14
  const result = new Uint8Array(1 + lengthTypeSize + buffer.length);
33
15
  const view = new DataView(result.buffer);
34
16
  view.setUint8(0, lengthType);
35
17
  switch (lengthType) {
36
- case length_encoding_type_1.LengthEncodingType.UInt8:
18
+ case LengthEncodingType.UInt8:
37
19
  view.setUint8(1, buffer.length);
38
20
  break;
39
- case length_encoding_type_1.LengthEncodingType.UInt16:
21
+ case LengthEncodingType.UInt16:
40
22
  view.setUint16(1, buffer.length, false); // big-endian
41
23
  break;
42
- case length_encoding_type_1.LengthEncodingType.UInt32:
24
+ case LengthEncodingType.UInt32:
43
25
  view.setUint32(1, buffer.length, false); // big-endian
44
26
  break;
45
- case length_encoding_type_1.LengthEncodingType.UInt64:
27
+ case LengthEncodingType.UInt64:
46
28
  view.setBigUint64(1, BigInt(buffer.length), false); // big-endian
47
29
  break;
48
30
  }
49
31
  result.set(buffer, 1 + lengthTypeSize);
50
32
  return result;
51
33
  }
52
- function decodeLengthEncodedData(buffer) {
34
+ export function decodeLengthEncodedData(buffer) {
53
35
  if (buffer.length < 1) {
54
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooShort, (0, i18n_setup_1.getEciesI18nEngine)());
36
+ throw new LengthError(LengthErrorType.LengthIsTooShort, getEciesI18nEngine());
55
37
  }
56
38
  const view = new DataView(buffer.buffer, buffer.byteOffset, buffer.byteLength);
57
39
  const lengthType = getLengthEncodingTypeFromValue(view.getUint8(0));
58
40
  const lengthTypeSize = getLengthForLengthType(lengthType);
59
41
  if (buffer.length < 1 + lengthTypeSize) {
60
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooShort, (0, i18n_setup_1.getEciesI18nEngine)());
42
+ throw new LengthError(LengthErrorType.LengthIsTooShort, getEciesI18nEngine());
61
43
  }
62
44
  let length;
63
45
  switch (lengthType) {
64
- case length_encoding_type_1.LengthEncodingType.UInt8:
46
+ case LengthEncodingType.UInt8:
65
47
  length = view.getUint8(1);
66
48
  break;
67
- case length_encoding_type_1.LengthEncodingType.UInt16:
49
+ case LengthEncodingType.UInt16:
68
50
  length = view.getUint16(1, false); // big-endian
69
51
  break;
70
- case length_encoding_type_1.LengthEncodingType.UInt32:
52
+ case LengthEncodingType.UInt32:
71
53
  length = view.getUint32(1, false); // big-endian
72
54
  break;
73
- case length_encoding_type_1.LengthEncodingType.UInt64:
55
+ case LengthEncodingType.UInt64:
74
56
  length = view.getBigUint64(1, false); // big-endian
75
57
  if (length.valueOf() > BigInt(Number.MAX_SAFE_INTEGER)) {
76
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooLong, (0, i18n_setup_1.getEciesI18nEngine)());
58
+ throw new LengthError(LengthErrorType.LengthIsTooLong, getEciesI18nEngine());
77
59
  }
78
60
  break;
79
61
  default:
80
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsInvalidType, (0, i18n_setup_1.getEciesI18nEngine)());
62
+ throw new LengthError(LengthErrorType.LengthIsInvalidType, getEciesI18nEngine());
81
63
  }
82
64
  const totalLength = 1 + lengthTypeSize + Number(length);
83
65
  if (totalLength > buffer.length) {
84
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooShort, (0, i18n_setup_1.getEciesI18nEngine)());
66
+ throw new LengthError(LengthErrorType.LengthIsTooShort, getEciesI18nEngine());
85
67
  }
86
68
  return {
87
69
  data: buffer.subarray(1 + lengthTypeSize, totalLength),
88
70
  totalLength,
89
71
  };
90
72
  }
91
- function uint8ArrayToBase64(uint8Array) {
73
+ export function uint8ArrayToBase64(uint8Array) {
92
74
  let binaryString = '';
93
75
  for (let i = 0; i < uint8Array.length; i++) {
94
76
  binaryString += String.fromCharCode(uint8Array[i]);
95
77
  }
96
78
  return btoa(binaryString);
97
79
  }
98
- function base64ToUint8Array(base64String) {
80
+ export function base64ToUint8Array(base64String) {
99
81
  const binaryString = atob(base64String);
100
82
  const len = binaryString.length;
101
83
  const bytes = new Uint8Array(len);
@@ -104,21 +86,21 @@ function base64ToUint8Array(base64String) {
104
86
  }
105
87
  return bytes;
106
88
  }
107
- function uint8ArrayToHex(uint8Array) {
89
+ export function uint8ArrayToHex(uint8Array) {
108
90
  return Array.from(uint8Array)
109
91
  .map((byte) => byte.toString(16).padStart(2, '0'))
110
92
  .join('');
111
93
  }
112
- function hexToUint8Array(hexString) {
113
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
94
+ export function hexToUint8Array(hexString) {
95
+ const engine = getEciesI18nEngine();
114
96
  if (!hexString || typeof hexString !== 'string') {
115
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Utils_InvalidHexString));
97
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Utils_InvalidHexString));
116
98
  }
117
99
  if (hexString.length % 2 !== 0) {
118
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Utils_HexStringMustHaveEvenLength));
100
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Utils_HexStringMustHaveEvenLength));
119
101
  }
120
102
  if (!/^[0-9a-fA-F]*$/.test(hexString)) {
121
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Utils_HexStringContainsInvalidCharacters));
103
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Utils_HexStringContainsInvalidCharacters));
122
104
  }
123
105
  const len = hexString.length;
124
106
  const bytes = new Uint8Array(len / 2);
@@ -134,7 +116,7 @@ function hexToUint8Array(hexString) {
134
116
  * CRC16-CCITT implementation for data integrity checking
135
117
  * Uses CRC16-CCITT-FALSE variant (init 0xFFFF)
136
118
  */
137
- function crc16(data) {
119
+ export function crc16(data) {
138
120
  let crc = 0xffff; // Initial value for CRC16-CCITT-FALSE
139
121
  const polynomial = 0x1021; // CRC16-CCITT polynomial
140
122
  for (let i = 0; i < data.length; i++) {
@@ -157,25 +139,25 @@ function crc16(data) {
157
139
  /**
158
140
  * Convert string to Uint8Array (UTF-8 encoding)
159
141
  */
160
- function stringToUint8Array(str) {
142
+ export function stringToUint8Array(str) {
161
143
  return new TextEncoder().encode(str);
162
144
  }
163
145
  /**
164
146
  * Convert Uint8Array to string (UTF-8 decoding)
165
147
  */
166
- function uint8ArrayToString(array) {
148
+ export function uint8ArrayToString(array) {
167
149
  return new TextDecoder().decode(array);
168
150
  }
169
151
  /**
170
152
  * Secure random bytes generation
171
153
  */
172
- function randomBytes(length) {
154
+ export function randomBytes(length) {
173
155
  return crypto.getRandomValues(new Uint8Array(length));
174
156
  }
175
157
  /**
176
158
  * Compare two Uint8Arrays for equality
177
159
  */
178
- function arraysEqual(a, b) {
160
+ export function arraysEqual(a, b) {
179
161
  if (a.length !== b.length)
180
162
  return false;
181
163
  let result = 0;
@@ -187,7 +169,7 @@ function arraysEqual(a, b) {
187
169
  /**
188
170
  * Concatenate multiple Uint8Arrays
189
171
  */
190
- function concatUint8Arrays(...arrays) {
172
+ export function concatUint8Arrays(...arrays) {
191
173
  const totalLength = arrays.reduce((sum, arr) => sum + arr.length, 0);
192
174
  const result = new Uint8Array(totalLength);
193
175
  let offset = 0;
@@ -202,43 +184,43 @@ function concatUint8Arrays(...arrays) {
202
184
  * @param length The length to evaluate
203
185
  * @returns The corresponding LengthEncodingType
204
186
  */
205
- function getLengthEncodingTypeForLength(length) {
187
+ export function getLengthEncodingTypeForLength(length) {
206
188
  if (typeof length === 'number') {
207
189
  if (length < 256) {
208
- return length_encoding_type_1.LengthEncodingType.UInt8;
190
+ return LengthEncodingType.UInt8;
209
191
  }
210
192
  else if (length < 65536) {
211
- return length_encoding_type_1.LengthEncodingType.UInt16;
193
+ return LengthEncodingType.UInt16;
212
194
  }
213
195
  else if (length < 4294967296) {
214
- return length_encoding_type_1.LengthEncodingType.UInt32;
196
+ return LengthEncodingType.UInt32;
215
197
  }
216
198
  else if (length < Number.MAX_SAFE_INTEGER) {
217
- return length_encoding_type_1.LengthEncodingType.UInt64;
199
+ return LengthEncodingType.UInt64;
218
200
  }
219
201
  else {
220
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooLong, (0, i18n_setup_1.getEciesI18nEngine)());
202
+ throw new LengthError(LengthErrorType.LengthIsTooLong, getEciesI18nEngine());
221
203
  }
222
204
  }
223
205
  else if (typeof length === 'bigint') {
224
206
  if (length < 256n) {
225
- return length_encoding_type_1.LengthEncodingType.UInt8;
207
+ return LengthEncodingType.UInt8;
226
208
  }
227
209
  else if (length < 65536n) {
228
- return length_encoding_type_1.LengthEncodingType.UInt16;
210
+ return LengthEncodingType.UInt16;
229
211
  }
230
212
  else if (length < 4294967296n) {
231
- return length_encoding_type_1.LengthEncodingType.UInt32;
213
+ return LengthEncodingType.UInt32;
232
214
  }
233
215
  else if (length < 18446744073709551616n) {
234
- return length_encoding_type_1.LengthEncodingType.UInt64;
216
+ return LengthEncodingType.UInt64;
235
217
  }
236
218
  else {
237
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsTooLong, (0, i18n_setup_1.getEciesI18nEngine)());
219
+ throw new LengthError(LengthErrorType.LengthIsTooLong, getEciesI18nEngine());
238
220
  }
239
221
  }
240
222
  else {
241
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsInvalidType, (0, i18n_setup_1.getEciesI18nEngine)());
223
+ throw new LengthError(LengthErrorType.LengthIsInvalidType, getEciesI18nEngine());
242
224
  }
243
225
  }
244
226
  /**
@@ -246,26 +228,26 @@ function getLengthEncodingTypeForLength(length) {
246
228
  * @param value The value to evaluate
247
229
  * @returns The corresponding LengthEncodingType
248
230
  */
249
- function getLengthEncodingTypeFromValue(value) {
250
- for (const length of Object.values(length_encoding_type_1.LengthEncodingType)) {
231
+ export function getLengthEncodingTypeFromValue(value) {
232
+ for (const length of Object.values(LengthEncodingType)) {
251
233
  if (length === value) {
252
234
  return length;
253
235
  }
254
236
  }
255
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsInvalidType, (0, i18n_setup_1.getEciesI18nEngine)());
237
+ throw new LengthError(LengthErrorType.LengthIsInvalidType, getEciesI18nEngine());
256
238
  }
257
239
  /**
258
240
  * Safely converts BigInt to Number, throwing if value exceeds safe integer range
259
241
  * @param value The BigInt value to convert
260
242
  * @returns The number value
261
243
  */
262
- function safeBigIntToNumber(value) {
263
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
244
+ export function safeBigIntToNumber(value) {
245
+ const engine = getEciesI18nEngine();
264
246
  if (value > BigInt(Number.MAX_SAFE_INTEGER)) {
265
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Utils_ValueExceedsSafeIntegerRange));
247
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Utils_ValueExceedsSafeIntegerRange));
266
248
  }
267
249
  if (value < BigInt(Number.MIN_SAFE_INTEGER)) {
268
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, ecies_string_key_1.EciesStringKey.Error_Utils_ValueBelowSafeIntegerRange));
250
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Utils_ValueBelowSafeIntegerRange));
269
251
  }
270
252
  return Number(value);
271
253
  }
@@ -274,18 +256,18 @@ function safeBigIntToNumber(value) {
274
256
  * @param type The LengthEncodingType to evaluate
275
257
  * @returns The length in bytes
276
258
  */
277
- function getLengthForLengthType(type) {
259
+ export function getLengthForLengthType(type) {
278
260
  switch (type) {
279
- case length_encoding_type_1.LengthEncodingType.UInt8:
261
+ case LengthEncodingType.UInt8:
280
262
  return 1;
281
- case length_encoding_type_1.LengthEncodingType.UInt16:
263
+ case LengthEncodingType.UInt16:
282
264
  return 2;
283
- case length_encoding_type_1.LengthEncodingType.UInt32:
265
+ case LengthEncodingType.UInt32:
284
266
  return 4;
285
- case length_encoding_type_1.LengthEncodingType.UInt64:
267
+ case LengthEncodingType.UInt64:
286
268
  return 8;
287
269
  default:
288
- throw new errors_1.LengthError(length_error_type_1.LengthErrorType.LengthIsInvalidType, (0, i18n_setup_1.getEciesI18nEngine)());
270
+ throw new LengthError(LengthErrorType.LengthIsInvalidType, getEciesI18nEngine());
289
271
  }
290
272
  }
291
273
  //# sourceMappingURL=utils.js.map
package/src/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/utils.ts"],"names":[],"mappings":"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"}