@digitaldefiance/ecies-lib 4.4.13 → 4.4.14

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 (589) hide show
  1. package/package.json +6 -4
  2. package/src/builders/ecies-builder.d.ts +18 -0
  3. package/src/builders/ecies-builder.d.ts.map +1 -0
  4. package/src/builders/ecies-builder.js +30 -0
  5. package/src/builders/ecies-builder.js.map +1 -0
  6. package/src/builders/index.d.ts +6 -0
  7. package/src/builders/index.d.ts.map +1 -0
  8. package/src/builders/{index.ts → index.js} +1 -1
  9. package/src/builders/index.js.map +1 -0
  10. package/src/builders/member-builder.d.ts +51 -0
  11. package/src/builders/member-builder.d.ts.map +1 -0
  12. package/src/builders/member-builder.js +97 -0
  13. package/src/builders/member-builder.js.map +1 -0
  14. package/src/constants.d.ts +60 -0
  15. package/src/constants.d.ts.map +1 -0
  16. package/src/constants.js +446 -0
  17. package/src/constants.js.map +1 -0
  18. package/src/core/errors/crypto-error.d.ts +34 -0
  19. package/src/core/errors/crypto-error.d.ts.map +1 -0
  20. package/src/core/errors/crypto-error.js +56 -0
  21. package/src/core/errors/crypto-error.js.map +1 -0
  22. package/src/core/index.d.ts +6 -0
  23. package/src/core/index.d.ts.map +1 -0
  24. package/src/core/{index.ts → index.js} +1 -1
  25. package/src/core/index.js.map +1 -0
  26. package/src/core/types/result.d.ts +16 -0
  27. package/src/core/types/result.d.ts.map +1 -0
  28. package/src/core/types/result.js +12 -0
  29. package/src/core/types/result.js.map +1 -0
  30. package/src/email-string.d.ts +42 -0
  31. package/src/email-string.d.ts.map +1 -0
  32. package/src/email-string.js +67 -0
  33. package/src/email-string.js.map +1 -0
  34. package/src/enumerations/disposed-error-type.d.ts +12 -0
  35. package/src/enumerations/disposed-error-type.d.ts.map +1 -0
  36. package/src/enumerations/disposed-error-type.js +13 -0
  37. package/src/enumerations/disposed-error-type.js.map +1 -0
  38. package/src/enumerations/ecies-cipher-suite.d.ts +4 -0
  39. package/src/enumerations/ecies-cipher-suite.d.ts.map +1 -0
  40. package/src/enumerations/ecies-cipher-suite.js +6 -0
  41. package/src/enumerations/ecies-cipher-suite.js.map +1 -0
  42. package/src/enumerations/ecies-encryption-type.d.ts +11 -0
  43. package/src/enumerations/ecies-encryption-type.d.ts.map +1 -0
  44. package/src/enumerations/ecies-encryption-type.js +27 -0
  45. package/src/enumerations/ecies-encryption-type.js.map +1 -0
  46. package/src/enumerations/ecies-error-type.d.ts +44 -0
  47. package/src/enumerations/ecies-error-type.d.ts.map +1 -0
  48. package/src/enumerations/ecies-error-type.js +45 -0
  49. package/src/enumerations/ecies-error-type.js.map +1 -0
  50. package/src/enumerations/ecies-string-key.d.ts +192 -0
  51. package/src/enumerations/ecies-string-key.d.ts.map +1 -0
  52. package/src/enumerations/ecies-string-key.js +199 -0
  53. package/src/enumerations/ecies-string-key.js.map +1 -0
  54. package/src/enumerations/ecies-version.d.ts +4 -0
  55. package/src/enumerations/ecies-version.d.ts.map +1 -0
  56. package/src/enumerations/ecies-version.js +5 -0
  57. package/src/enumerations/ecies-version.js.map +1 -0
  58. package/src/enumerations/guid-brand-type.d.ts +27 -0
  59. package/src/enumerations/guid-brand-type.d.ts.map +1 -0
  60. package/src/enumerations/guid-brand-type.js +28 -0
  61. package/src/enumerations/guid-brand-type.js.map +1 -0
  62. package/src/enumerations/guid-error-type.d.ts +7 -0
  63. package/src/enumerations/guid-error-type.d.ts.map +1 -0
  64. package/src/enumerations/guid-error-type.js +8 -0
  65. package/src/enumerations/guid-error-type.js.map +1 -0
  66. package/src/enumerations/id-provider-error-type.d.ts +43 -0
  67. package/src/enumerations/id-provider-error-type.d.ts.map +1 -0
  68. package/src/enumerations/id-provider-error-type.js +44 -0
  69. package/src/enumerations/id-provider-error-type.js.map +1 -0
  70. package/src/enumerations/index.d.ts +18 -0
  71. package/src/enumerations/index.d.ts.map +1 -0
  72. package/src/enumerations/{index.ts → index.js} +1 -0
  73. package/src/enumerations/index.js.map +1 -0
  74. package/src/enumerations/invalid-email-type.d.ts +6 -0
  75. package/src/enumerations/invalid-email-type.d.ts.map +1 -0
  76. package/src/enumerations/invalid-email-type.js +7 -0
  77. package/src/enumerations/invalid-email-type.js.map +1 -0
  78. package/src/enumerations/length-encoding-type.d.ts +7 -0
  79. package/src/enumerations/length-encoding-type.d.ts.map +1 -0
  80. package/src/enumerations/length-encoding-type.js +8 -0
  81. package/src/enumerations/length-encoding-type.js.map +1 -0
  82. package/src/enumerations/length-error-type.d.ts +6 -0
  83. package/src/enumerations/length-error-type.d.ts.map +1 -0
  84. package/src/enumerations/length-error-type.js +7 -0
  85. package/src/enumerations/length-error-type.js.map +1 -0
  86. package/src/enumerations/member-error-type.d.ts +87 -0
  87. package/src/enumerations/member-error-type.d.ts.map +1 -0
  88. package/src/enumerations/member-error-type.js +88 -0
  89. package/src/enumerations/member-error-type.js.map +1 -0
  90. package/src/enumerations/{member-type.ts → member-type.d.ts} +6 -7
  91. package/src/enumerations/member-type.d.ts.map +1 -0
  92. package/src/enumerations/member-type.js +16 -0
  93. package/src/enumerations/member-type.js.map +1 -0
  94. package/src/enumerations/password-login-error-type.d.ts +5 -0
  95. package/src/enumerations/password-login-error-type.d.ts.map +1 -0
  96. package/src/enumerations/password-login-error-type.js +6 -0
  97. package/src/enumerations/password-login-error-type.js.map +1 -0
  98. package/src/enumerations/pbkdf2-error-type.d.ts +6 -0
  99. package/src/enumerations/pbkdf2-error-type.d.ts.map +1 -0
  100. package/src/enumerations/pbkdf2-error-type.js +7 -0
  101. package/src/enumerations/pbkdf2-error-type.js.map +1 -0
  102. package/src/enumerations/pbkdf2-profile.d.ts +6 -0
  103. package/src/enumerations/pbkdf2-profile.d.ts.map +1 -0
  104. package/src/enumerations/pbkdf2-profile.js +7 -0
  105. package/src/enumerations/pbkdf2-profile.js.map +1 -0
  106. package/src/enumerations/secure-storage-error-type.d.ts +6 -0
  107. package/src/enumerations/secure-storage-error-type.d.ts.map +1 -0
  108. package/src/enumerations/secure-storage-error-type.js +7 -0
  109. package/src/enumerations/secure-storage-error-type.js.map +1 -0
  110. package/src/errors/disposed.d.ts +22 -0
  111. package/src/errors/disposed.d.ts.map +1 -0
  112. package/src/errors/disposed.js +28 -0
  113. package/src/errors/disposed.js.map +1 -0
  114. package/src/errors/ecies.d.ts +52 -0
  115. package/src/errors/ecies.d.ts.map +1 -0
  116. package/src/errors/ecies.js +78 -0
  117. package/src/errors/ecies.js.map +1 -0
  118. package/src/errors/guid.d.ts +49 -0
  119. package/src/errors/guid.d.ts.map +1 -0
  120. package/src/errors/guid.js +96 -0
  121. package/src/errors/guid.js.map +1 -0
  122. package/src/errors/id-provider.d.ts +23 -0
  123. package/src/errors/id-provider.d.ts.map +1 -0
  124. package/src/errors/id-provider.js +29 -0
  125. package/src/errors/id-provider.js.map +1 -0
  126. package/src/errors/{index.ts → index.d.ts} +1 -0
  127. package/src/errors/index.d.ts.map +1 -0
  128. package/src/errors/index.js +10 -0
  129. package/src/errors/index.js.map +1 -0
  130. package/src/errors/invalid-email.d.ts +8 -0
  131. package/src/errors/invalid-email.d.ts.map +1 -0
  132. package/src/errors/invalid-email.js +15 -0
  133. package/src/errors/invalid-email.js.map +1 -0
  134. package/src/errors/length.d.ts +7 -0
  135. package/src/errors/length.d.ts.map +1 -0
  136. package/src/errors/length.js +11 -0
  137. package/src/errors/length.js.map +1 -0
  138. package/src/errors/member.d.ts +7 -0
  139. package/src/errors/member.d.ts.map +1 -0
  140. package/src/errors/member.js +11 -0
  141. package/src/errors/member.js.map +1 -0
  142. package/src/errors/pbkdf2.d.ts +7 -0
  143. package/src/errors/pbkdf2.d.ts.map +1 -0
  144. package/src/errors/pbkdf2.js +11 -0
  145. package/src/errors/pbkdf2.js.map +1 -0
  146. package/src/errors/secure-storage.d.ts +7 -0
  147. package/src/errors/secure-storage.d.ts.map +1 -0
  148. package/src/errors/secure-storage.js +12 -0
  149. package/src/errors/secure-storage.js.map +1 -0
  150. package/src/errors/simple-ecies.d.ts +6 -0
  151. package/src/errors/simple-ecies.d.ts.map +1 -0
  152. package/src/errors/simple-ecies.js +12 -0
  153. package/src/errors/simple-ecies.js.map +1 -0
  154. package/src/errors/simple-test-error.d.ts +4 -0
  155. package/src/errors/simple-test-error.d.ts.map +1 -0
  156. package/src/errors/simple-test-error.js +7 -0
  157. package/src/errors/simple-test-error.js.map +1 -0
  158. package/src/i18n-setup.d.ts +32 -0
  159. package/src/i18n-setup.d.ts.map +1 -0
  160. package/src/i18n-setup.js +101 -0
  161. package/src/i18n-setup.js.map +1 -0
  162. package/src/index.d.ts +80 -0
  163. package/src/index.d.ts.map +1 -0
  164. package/src/{index.ts → index.js} +7 -64
  165. package/src/index.js.map +1 -0
  166. package/src/interfaces/checksum-config.d.ts +5 -0
  167. package/src/interfaces/checksum-config.d.ts.map +1 -0
  168. package/src/interfaces/checksum-config.js +2 -0
  169. package/src/interfaces/checksum-config.js.map +1 -0
  170. package/src/interfaces/checksum-consts.d.ts +11 -0
  171. package/src/interfaces/checksum-consts.d.ts.map +1 -0
  172. package/src/interfaces/checksum-consts.js +2 -0
  173. package/src/interfaces/checksum-consts.js.map +1 -0
  174. package/src/interfaces/configuration-provenance.d.ts +43 -0
  175. package/src/interfaces/configuration-provenance.d.ts.map +1 -0
  176. package/src/interfaces/configuration-provenance.js +3 -0
  177. package/src/interfaces/configuration-provenance.js.map +1 -0
  178. package/src/interfaces/constants.d.ts +70 -0
  179. package/src/interfaces/constants.d.ts.map +1 -0
  180. package/src/interfaces/constants.js +2 -0
  181. package/src/interfaces/constants.js.map +1 -0
  182. package/src/interfaces/ecies-config.d.ts +9 -0
  183. package/src/interfaces/ecies-config.d.ts.map +1 -0
  184. package/src/interfaces/ecies-config.js +2 -0
  185. package/src/interfaces/ecies-config.js.map +1 -0
  186. package/src/interfaces/ecies-consts.d.ts +61 -0
  187. package/src/interfaces/ecies-consts.d.ts.map +1 -0
  188. package/src/interfaces/ecies-consts.js +2 -0
  189. package/src/interfaces/ecies-consts.js.map +1 -0
  190. package/src/interfaces/ecies-file-service.d.ts +7 -0
  191. package/src/interfaces/ecies-file-service.d.ts.map +1 -0
  192. package/src/interfaces/ecies-file-service.js +2 -0
  193. package/src/interfaces/ecies-file-service.js.map +1 -0
  194. package/src/interfaces/encrypted-chunk.d.ts +55 -0
  195. package/src/interfaces/encrypted-chunk.d.ts.map +1 -0
  196. package/src/interfaces/encrypted-chunk.js +12 -0
  197. package/src/interfaces/encrypted-chunk.js.map +1 -0
  198. package/src/interfaces/encryption-state.d.ts +18 -0
  199. package/src/interfaces/encryption-state.d.ts.map +1 -0
  200. package/src/interfaces/encryption-state.js +2 -0
  201. package/src/interfaces/encryption-state.js.map +1 -0
  202. package/src/interfaces/frontend-member-operational.d.ts +51 -0
  203. package/src/interfaces/frontend-member-operational.d.ts.map +1 -0
  204. package/src/interfaces/frontend-member-operational.js +2 -0
  205. package/src/interfaces/frontend-member-operational.js.map +1 -0
  206. package/src/interfaces/guid.d.ts +78 -0
  207. package/src/interfaces/guid.d.ts.map +1 -0
  208. package/src/interfaces/guid.js +2 -0
  209. package/src/interfaces/guid.js.map +1 -0
  210. package/src/interfaces/id-provider.d.ts +107 -0
  211. package/src/interfaces/id-provider.d.ts.map +1 -0
  212. package/src/interfaces/id-provider.js +52 -0
  213. package/src/interfaces/id-provider.js.map +1 -0
  214. package/src/interfaces/{index.ts → index.d.ts} +1 -0
  215. package/src/interfaces/index.d.ts.map +1 -0
  216. package/src/interfaces/index.js +13 -0
  217. package/src/interfaces/index.js.map +1 -0
  218. package/src/interfaces/invariant.d.ts +46 -0
  219. package/src/interfaces/invariant.d.ts.map +1 -0
  220. package/src/interfaces/invariant.js +18 -0
  221. package/src/interfaces/invariant.js.map +1 -0
  222. package/src/interfaces/library-error.d.ts +23 -0
  223. package/src/interfaces/library-error.d.ts.map +1 -0
  224. package/src/interfaces/library-error.js +2 -0
  225. package/src/interfaces/library-error.js.map +1 -0
  226. package/src/interfaces/{member-storage.ts → member-storage.d.ts} +10 -11
  227. package/src/interfaces/member-storage.d.ts.map +1 -0
  228. package/src/interfaces/member-storage.js +2 -0
  229. package/src/interfaces/member-storage.js.map +1 -0
  230. package/src/interfaces/{member-with-mnemonic.ts → member-with-mnemonic.d.ts} +3 -3
  231. package/src/interfaces/member-with-mnemonic.d.ts.map +1 -0
  232. package/src/interfaces/member-with-mnemonic.js +2 -0
  233. package/src/interfaces/member-with-mnemonic.js.map +1 -0
  234. package/src/interfaces/member.d.ts +55 -0
  235. package/src/interfaces/member.d.ts.map +1 -0
  236. package/src/interfaces/member.js +2 -0
  237. package/src/interfaces/member.js.map +1 -0
  238. package/src/interfaces/multi-recipient-chunk.d.ts +54 -0
  239. package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -0
  240. package/src/interfaces/multi-recipient-chunk.js +11 -0
  241. package/src/interfaces/multi-recipient-chunk.js.map +1 -0
  242. package/src/interfaces/pbkdf2-config.d.ts +7 -0
  243. package/src/interfaces/pbkdf2-config.d.ts.map +1 -0
  244. package/src/interfaces/pbkdf2-config.js +2 -0
  245. package/src/interfaces/pbkdf2-config.js.map +1 -0
  246. package/src/interfaces/pbkdf2-consts.d.ts +9 -0
  247. package/src/interfaces/pbkdf2-consts.d.ts.map +1 -0
  248. package/src/interfaces/pbkdf2-consts.js +2 -0
  249. package/src/interfaces/pbkdf2-consts.js.map +1 -0
  250. package/src/interfaces/pbkdf2-result.d.ts +6 -0
  251. package/src/interfaces/pbkdf2-result.d.ts.map +1 -0
  252. package/src/interfaces/pbkdf2-result.js +2 -0
  253. package/src/interfaces/pbkdf2-result.js.map +1 -0
  254. package/src/interfaces/stream-config.d.ts +14 -0
  255. package/src/interfaces/stream-config.d.ts.map +1 -0
  256. package/src/interfaces/stream-config.js +8 -0
  257. package/src/interfaces/stream-config.js.map +1 -0
  258. package/src/interfaces/stream-header.d.ts +29 -0
  259. package/src/interfaces/stream-header.d.ts.map +1 -0
  260. package/src/interfaces/stream-header.js +9 -0
  261. package/src/interfaces/stream-header.js.map +1 -0
  262. package/src/interfaces/stream-progress.d.ts +33 -0
  263. package/src/interfaces/stream-progress.d.ts.map +1 -0
  264. package/src/interfaces/stream-progress.js +2 -0
  265. package/src/interfaces/stream-progress.js.map +1 -0
  266. package/src/lib/configuration-provenance-utils.d.ts +11 -0
  267. package/src/lib/configuration-provenance-utils.d.ts.map +1 -0
  268. package/src/lib/configuration-provenance-utils.js +26 -0
  269. package/src/lib/configuration-provenance-utils.js.map +1 -0
  270. package/src/lib/crypto-container.d.ts +25 -0
  271. package/src/lib/crypto-container.d.ts.map +1 -0
  272. package/src/lib/crypto-container.js +46 -0
  273. package/src/lib/crypto-container.js.map +1 -0
  274. package/src/lib/guid.d.ts +344 -0
  275. package/src/lib/guid.d.ts.map +1 -0
  276. package/src/lib/guid.js +914 -0
  277. package/src/lib/guid.js.map +1 -0
  278. package/src/lib/id-providers/custom-provider.d.ts +46 -0
  279. package/src/lib/id-providers/custom-provider.d.ts.map +1 -0
  280. package/src/lib/id-providers/custom-provider.js +85 -0
  281. package/src/lib/id-providers/custom-provider.js.map +1 -0
  282. package/src/lib/id-providers/guidv4-provider.d.ts +56 -0
  283. package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
  284. package/src/lib/id-providers/guidv4-provider.js +122 -0
  285. package/src/lib/id-providers/guidv4-provider.js.map +1 -0
  286. package/src/lib/id-providers/{index.ts → index.d.ts} +5 -6
  287. package/src/lib/id-providers/index.d.ts.map +1 -0
  288. package/src/lib/id-providers/index.js +29 -0
  289. package/src/lib/id-providers/index.js.map +1 -0
  290. package/src/lib/id-providers/objectid-provider.d.ts +43 -0
  291. package/src/lib/id-providers/objectid-provider.d.ts.map +1 -0
  292. package/src/lib/id-providers/objectid-provider.js +104 -0
  293. package/src/lib/id-providers/objectid-provider.js.map +1 -0
  294. package/src/lib/id-providers/uuid-provider.d.ts +52 -0
  295. package/src/lib/id-providers/uuid-provider.d.ts.map +1 -0
  296. package/src/lib/id-providers/uuid-provider.js +110 -0
  297. package/src/lib/id-providers/uuid-provider.js.map +1 -0
  298. package/src/lib/index.d.ts +6 -0
  299. package/src/lib/index.d.ts.map +1 -0
  300. package/src/lib/{index.ts → index.js} +2 -2
  301. package/src/lib/index.js.map +1 -0
  302. package/src/lib/invariant-validator.d.ts +59 -0
  303. package/src/lib/invariant-validator.d.ts.map +1 -0
  304. package/src/lib/invariant-validator.js +97 -0
  305. package/src/lib/invariant-validator.js.map +1 -0
  306. package/src/lib/invariants/encryption-algorithm-consistency.d.ts +17 -0
  307. package/src/lib/invariants/encryption-algorithm-consistency.d.ts.map +1 -0
  308. package/src/lib/invariants/encryption-algorithm-consistency.js +49 -0
  309. package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -0
  310. package/src/lib/invariants/index.d.ts +4 -0
  311. package/src/lib/invariants/index.d.ts.map +1 -0
  312. package/src/lib/invariants/{index.ts → index.js} +1 -0
  313. package/src/lib/invariants/index.js.map +1 -0
  314. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts +16 -0
  315. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts.map +1 -0
  316. package/src/lib/invariants/pbkdf2-profiles-validity.js +58 -0
  317. package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -0
  318. package/src/lib/invariants/recipient-id-consistency.d.ts +18 -0
  319. package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
  320. package/src/lib/invariants/recipient-id-consistency.js +31 -0
  321. package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
  322. package/src/lib/multi-recipient-chunk-utils.d.ts +38 -0
  323. package/src/lib/multi-recipient-chunk-utils.d.ts.map +1 -0
  324. package/src/lib/multi-recipient-chunk-utils.js +41 -0
  325. package/src/lib/multi-recipient-chunk-utils.js.map +1 -0
  326. package/src/member.d.ts +92 -0
  327. package/src/member.d.ts.map +1 -0
  328. package/src/member.js +322 -0
  329. package/src/member.js.map +1 -0
  330. package/src/{pbkdf2-profiles.ts → pbkdf2-profiles.d.ts} +2 -2
  331. package/src/pbkdf2-profiles.d.ts.map +1 -0
  332. package/src/pbkdf2-profiles.js +2 -0
  333. package/src/pbkdf2-profiles.js.map +1 -0
  334. package/src/phone-number.d.ts +6 -0
  335. package/src/phone-number.d.ts.map +1 -0
  336. package/src/phone-number.js +18 -0
  337. package/src/phone-number.js.map +1 -0
  338. package/src/regexes.d.ts +7 -0
  339. package/src/regexes.d.ts.map +1 -0
  340. package/src/regexes.js +7 -0
  341. package/src/regexes.js.map +1 -0
  342. package/src/secure-buffer.d.ts +61 -0
  343. package/src/secure-buffer.d.ts.map +1 -0
  344. package/src/secure-buffer.js +201 -0
  345. package/src/secure-buffer.js.map +1 -0
  346. package/src/secure-string.d.ts +46 -0
  347. package/src/secure-string.d.ts.map +1 -0
  348. package/src/secure-string.js +206 -0
  349. package/src/secure-string.js.map +1 -0
  350. package/src/services/aes-gcm.d.ts +57 -0
  351. package/src/services/aes-gcm.d.ts.map +1 -0
  352. package/src/services/aes-gcm.js +142 -0
  353. package/src/services/aes-gcm.js.map +1 -0
  354. package/src/services/chunk-processor.d.ts +31 -0
  355. package/src/services/chunk-processor.d.ts.map +1 -0
  356. package/src/services/chunk-processor.js +145 -0
  357. package/src/services/chunk-processor.js.map +1 -0
  358. package/src/services/ecies/crypto-core.d.ts +72 -0
  359. package/src/services/ecies/crypto-core.d.ts.map +1 -0
  360. package/src/services/ecies/crypto-core.js +205 -0
  361. package/src/services/ecies/crypto-core.js.map +1 -0
  362. package/src/services/ecies/example.d.ts +25 -0
  363. package/src/services/ecies/example.d.ts.map +1 -0
  364. package/src/services/ecies/example.js +121 -0
  365. package/src/services/ecies/example.js.map +1 -0
  366. package/src/services/ecies/file.d.ts +18 -0
  367. package/src/services/ecies/file.d.ts.map +1 -0
  368. package/src/services/ecies/file.js +106 -0
  369. package/src/services/ecies/file.js.map +1 -0
  370. package/src/services/ecies/index.d.ts +38 -0
  371. package/src/services/ecies/index.d.ts.map +1 -0
  372. package/src/services/ecies/{index.ts → index.js} +1 -2
  373. package/src/services/ecies/index.js.map +1 -0
  374. package/src/services/ecies/integration.d.ts +59 -0
  375. package/src/services/ecies/integration.d.ts.map +1 -0
  376. package/src/services/ecies/integration.js +167 -0
  377. package/src/services/ecies/integration.js.map +1 -0
  378. package/src/services/ecies/interfaces.d.ts +54 -0
  379. package/src/services/ecies/interfaces.d.ts.map +1 -0
  380. package/src/services/ecies/interfaces.js +5 -0
  381. package/src/services/ecies/interfaces.js.map +1 -0
  382. package/src/services/ecies/manual-test.d.ts +29 -0
  383. package/src/services/ecies/manual-test.d.ts.map +1 -0
  384. package/src/services/ecies/manual-test.js +163 -0
  385. package/src/services/ecies/manual-test.js.map +1 -0
  386. package/src/services/ecies/multi-recipient.d.ts +56 -0
  387. package/src/services/ecies/multi-recipient.d.ts.map +1 -0
  388. package/src/services/ecies/multi-recipient.js +344 -0
  389. package/src/services/ecies/multi-recipient.js.map +1 -0
  390. package/src/services/ecies/service.d.ts +120 -0
  391. package/src/services/ecies/service.d.ts.map +1 -0
  392. package/src/services/ecies/service.js +210 -0
  393. package/src/services/ecies/service.js.map +1 -0
  394. package/src/services/ecies/signature.d.ts +27 -0
  395. package/src/services/ecies/signature.d.ts.map +1 -0
  396. package/src/services/ecies/signature.js +72 -0
  397. package/src/services/ecies/signature.js.map +1 -0
  398. package/src/services/ecies/single-recipient.d.ts +46 -0
  399. package/src/services/ecies/single-recipient.d.ts.map +1 -0
  400. package/src/services/ecies/single-recipient.js +322 -0
  401. package/src/services/ecies/single-recipient.js.map +1 -0
  402. package/src/services/encryption-stream.d.ts +71 -0
  403. package/src/services/encryption-stream.d.ts.map +1 -0
  404. package/src/services/encryption-stream.js +295 -0
  405. package/src/services/encryption-stream.js.map +1 -0
  406. package/src/services/index.d.ts +11 -0
  407. package/src/services/index.d.ts.map +1 -0
  408. package/src/services/{index.ts → index.js} +1 -0
  409. package/src/services/index.js.map +1 -0
  410. package/src/services/multi-recipient-processor.d.ts +35 -0
  411. package/src/services/multi-recipient-processor.d.ts.map +1 -0
  412. package/src/services/multi-recipient-processor.js +289 -0
  413. package/src/services/multi-recipient-processor.js.map +1 -0
  414. package/src/services/password-login.d.ts +47 -0
  415. package/src/services/password-login.d.ts.map +1 -0
  416. package/src/services/password-login.js +115 -0
  417. package/src/services/password-login.js.map +1 -0
  418. package/src/services/pbkdf2.d.ts +54 -0
  419. package/src/services/pbkdf2.d.ts.map +1 -0
  420. package/src/services/pbkdf2.js +108 -0
  421. package/src/services/pbkdf2.js.map +1 -0
  422. package/src/services/progress-tracker.d.ts +23 -0
  423. package/src/services/progress-tracker.d.ts.map +1 -0
  424. package/src/services/progress-tracker.js +103 -0
  425. package/src/services/progress-tracker.js.map +1 -0
  426. package/src/services/resumable-encryption.d.ts +19 -0
  427. package/src/services/resumable-encryption.d.ts.map +1 -0
  428. package/src/services/resumable-encryption.js +105 -0
  429. package/src/services/resumable-encryption.js.map +1 -0
  430. package/src/services/xor.d.ts +37 -0
  431. package/src/services/xor.d.ts.map +1 -0
  432. package/src/services/xor.js +63 -0
  433. package/src/services/xor.js.map +1 -0
  434. package/src/test-mocks/index.d.ts +2 -0
  435. package/src/test-mocks/index.d.ts.map +1 -0
  436. package/src/test-mocks/index.js +2 -0
  437. package/src/test-mocks/index.js.map +1 -0
  438. package/src/test-mocks/mock-frontend-member.d.ts +85 -0
  439. package/src/test-mocks/mock-frontend-member.d.ts.map +1 -0
  440. package/src/test-mocks/mock-frontend-member.js +190 -0
  441. package/src/test-mocks/mock-frontend-member.js.map +1 -0
  442. package/src/testing.d.ts +2 -0
  443. package/src/testing.d.ts.map +1 -0
  444. package/src/{testing.ts → testing.js} +1 -0
  445. package/src/testing.js.map +1 -0
  446. package/src/translations/de.d.ts +4 -0
  447. package/src/translations/de.d.ts.map +1 -0
  448. package/src/translations/{de.ts → de.js} +56 -112
  449. package/src/translations/de.js.map +1 -0
  450. package/src/translations/en-US.d.ts +4 -0
  451. package/src/translations/en-US.d.ts.map +1 -0
  452. package/src/translations/{en-US.ts → en-US.js} +58 -116
  453. package/src/translations/en-US.js.map +1 -0
  454. package/src/translations/es.d.ts +4 -0
  455. package/src/translations/es.d.ts.map +1 -0
  456. package/src/translations/{es.ts → es.js} +67 -134
  457. package/src/translations/es.js.map +1 -0
  458. package/src/translations/fr.d.ts +4 -0
  459. package/src/translations/fr.d.ts.map +1 -0
  460. package/src/translations/{fr.ts → fr.js} +64 -129
  461. package/src/translations/fr.js.map +1 -0
  462. package/src/translations/ja.d.ts +4 -0
  463. package/src/translations/ja.d.ts.map +1 -0
  464. package/src/translations/{ja.ts → ja.js} +55 -111
  465. package/src/translations/ja.js.map +1 -0
  466. package/src/translations/uk.d.ts +4 -0
  467. package/src/translations/uk.d.ts.map +1 -0
  468. package/src/translations/{uk.ts → uk.js} +67 -132
  469. package/src/translations/uk.js.map +1 -0
  470. package/src/translations/zh-cn.d.ts +4 -0
  471. package/src/translations/zh-cn.d.ts.map +1 -0
  472. package/src/translations/{zh-cn.ts → zh-cn.js} +29 -60
  473. package/src/translations/zh-cn.js.map +1 -0
  474. package/src/types/deep-partial.d.ts +4 -0
  475. package/src/types/deep-partial.d.ts.map +1 -0
  476. package/src/types/deep-partial.js +2 -0
  477. package/src/types/deep-partial.js.map +1 -0
  478. package/src/{types.ts → types.d.ts} +7 -15
  479. package/src/types.d.ts.map +1 -0
  480. package/src/types.js +2 -0
  481. package/src/types.js.map +1 -0
  482. package/src/utils/encryption-type-utils.d.ts +29 -0
  483. package/src/utils/encryption-type-utils.d.ts.map +1 -0
  484. package/src/utils/encryption-type-utils.js +61 -0
  485. package/src/utils/encryption-type-utils.js.map +1 -0
  486. package/src/utils.d.ts +68 -0
  487. package/src/utils.d.ts.map +1 -0
  488. package/src/utils.js +273 -0
  489. package/src/utils.js.map +1 -0
  490. package/LICENSE +0 -21
  491. package/src/builders/ecies-builder.ts +0 -39
  492. package/src/builders/member-builder.ts +0 -155
  493. package/src/constants.ts +0 -609
  494. package/src/core/errors/crypto-error.ts +0 -78
  495. package/src/core/types/result.ts +0 -19
  496. package/src/email-string.ts +0 -82
  497. package/src/enumerations/disposed-error-type.ts +0 -11
  498. package/src/enumerations/ecies-cipher-suite.ts +0 -4
  499. package/src/enumerations/ecies-encryption-type.ts +0 -41
  500. package/src/enumerations/ecies-error-type.ts +0 -43
  501. package/src/enumerations/ecies-string-key.ts +0 -205
  502. package/src/enumerations/ecies-version.ts +0 -3
  503. package/src/enumerations/guid-brand-type.ts +0 -26
  504. package/src/enumerations/guid-error-type.ts +0 -6
  505. package/src/enumerations/id-provider-error-type.ts +0 -50
  506. package/src/enumerations/invalid-email-type.ts +0 -5
  507. package/src/enumerations/length-encoding-type.ts +0 -6
  508. package/src/enumerations/length-error-type.ts +0 -5
  509. package/src/enumerations/member-error-type.ts +0 -106
  510. package/src/enumerations/password-login-error-type.ts +0 -4
  511. package/src/enumerations/pbkdf2-error-type.ts +0 -5
  512. package/src/enumerations/pbkdf2-profile.ts +0 -5
  513. package/src/enumerations/secure-storage-error-type.ts +0 -5
  514. package/src/errors/disposed.ts +0 -36
  515. package/src/errors/ecies.ts +0 -153
  516. package/src/errors/guid.ts +0 -130
  517. package/src/errors/id-provider.ts +0 -40
  518. package/src/errors/invalid-email.ts +0 -23
  519. package/src/errors/length.ts +0 -19
  520. package/src/errors/member.ts +0 -20
  521. package/src/errors/pbkdf2.ts +0 -20
  522. package/src/errors/secure-storage.ts +0 -17
  523. package/src/errors/simple-ecies.ts +0 -21
  524. package/src/errors/simple-test-error.ts +0 -6
  525. package/src/i18n-setup.ts +0 -130
  526. package/src/interfaces/checksum-config.ts +0 -4
  527. package/src/interfaces/checksum-consts.ts +0 -13
  528. package/src/interfaces/configuration-provenance.ts +0 -54
  529. package/src/interfaces/constants.ts +0 -75
  530. package/src/interfaces/ecies-config.ts +0 -8
  531. package/src/interfaces/ecies-consts.ts +0 -76
  532. package/src/interfaces/ecies-file-service.ts +0 -6
  533. package/src/interfaces/encrypted-chunk.ts +0 -64
  534. package/src/interfaces/encryption-state.ts +0 -19
  535. package/src/interfaces/frontend-member-operational.ts +0 -77
  536. package/src/interfaces/guid.ts +0 -86
  537. package/src/interfaces/id-provider.ts +0 -152
  538. package/src/interfaces/invariant.ts +0 -60
  539. package/src/interfaces/library-error.ts +0 -23
  540. package/src/interfaces/member.ts +0 -84
  541. package/src/interfaces/multi-recipient-chunk.ts +0 -61
  542. package/src/interfaces/pbkdf2-config.ts +0 -6
  543. package/src/interfaces/pbkdf2-consts.ts +0 -10
  544. package/src/interfaces/pbkdf2-result.ts +0 -5
  545. package/src/interfaces/stream-config.ts +0 -17
  546. package/src/interfaces/stream-header.ts +0 -34
  547. package/src/interfaces/stream-progress.ts +0 -31
  548. package/src/lib/configuration-provenance-utils.ts +0 -29
  549. package/src/lib/crypto-container.ts +0 -64
  550. package/src/lib/guid.ts +0 -1097
  551. package/src/lib/id-providers/custom-provider.ts +0 -109
  552. package/src/lib/id-providers/guidv4-provider.ts +0 -141
  553. package/src/lib/id-providers/objectid-provider.ts +0 -125
  554. package/src/lib/id-providers/uuid-provider.ts +0 -133
  555. package/src/lib/invariant-validator.ts +0 -133
  556. package/src/lib/invariants/encryption-algorithm-consistency.ts +0 -73
  557. package/src/lib/invariants/pbkdf2-profiles-validity.ts +0 -78
  558. package/src/lib/invariants/recipient-id-consistency.ts +0 -46
  559. package/src/lib/multi-recipient-chunk-utils.ts +0 -63
  560. package/src/member.ts +0 -495
  561. package/src/phone-number.ts +0 -18
  562. package/src/regexes.ts +0 -10
  563. package/src/secure-buffer.ts +0 -226
  564. package/src/secure-string.ts +0 -244
  565. package/src/services/aes-gcm.ts +0 -220
  566. package/src/services/chunk-processor.ts +0 -188
  567. package/src/services/ecies/README.md +0 -147
  568. package/src/services/ecies/crypto-core.ts +0 -292
  569. package/src/services/ecies/example.ts +0 -185
  570. package/src/services/ecies/file.ts +0 -167
  571. package/src/services/ecies/integration.ts +0 -241
  572. package/src/services/ecies/interfaces.ts +0 -62
  573. package/src/services/ecies/manual-test.ts +0 -219
  574. package/src/services/ecies/multi-recipient.ts +0 -545
  575. package/src/services/ecies/service.ts +0 -370
  576. package/src/services/ecies/signature.ts +0 -93
  577. package/src/services/ecies/single-recipient.ts +0 -476
  578. package/src/services/encryption-stream.ts +0 -435
  579. package/src/services/multi-recipient-processor.ts +0 -377
  580. package/src/services/password-login.ts +0 -226
  581. package/src/services/pbkdf2.ts +0 -169
  582. package/src/services/progress-tracker.ts +0 -128
  583. package/src/services/resumable-encryption.ts +0 -135
  584. package/src/services/xor.ts +0 -65
  585. package/src/test-mocks/index.ts +0 -1
  586. package/src/test-mocks/mock-frontend-member.ts +0 -276
  587. package/src/types/deep-partial.ts +0 -11
  588. package/src/utils/encryption-type-utils.ts +0 -76
  589. package/src/utils.ts +0 -329
@@ -1,36 +0,0 @@
1
- import { TranslatableGenericError } from '@digitaldefiance/i18n-lib';
2
- import { EciesComponentId } from '../i18n-setup';
3
- import { EciesStringKey } from '../enumerations';
4
-
5
- /**
6
- * Error thrown when operations are attempted on disposed objects.
7
- * Uses TranslatableGenericError for simple i18n support since there's only one error type.
8
- *
9
- * @example
10
- * ```typescript
11
- * throw new DisposedError();
12
- * throw new DisposedError('fr'); // French
13
- * ```
14
- */
15
- export class DisposedError extends TranslatableGenericError<EciesStringKey> {
16
- /**
17
- * Creates a new DisposedError instance.
18
- *
19
- * @param language - Optional language code for error message localization.
20
- * @param instanceKey - Optional i18n engine instance key (defaults to ecies engine).
21
- */
22
- constructor(language?: string, instanceKey: string = 'ecies') {
23
- super(
24
- EciesComponentId,
25
- EciesStringKey.Error_DisposedError_ObjectDisposed,
26
- undefined,
27
- language,
28
- undefined,
29
- instanceKey
30
- );
31
- this.name = 'DisposedError';
32
-
33
- // Maintains proper prototype chain for instanceof checks
34
- Object.setPrototypeOf(this, DisposedError.prototype);
35
- }
36
- }
@@ -1,153 +0,0 @@
1
- import {
2
- buildReasonMap,
3
- HandleableErrorOptions,
4
- TypedHandleableError,
5
- } from '@digitaldefiance/i18n-lib';
6
- import { ECIESErrorTypeEnum } from '../enumerations/ecies-error-type';
7
- import { EciesStringKey } from '../enumerations/ecies-string-key';
8
- import { EciesComponentId } from '../i18n-setup';
9
-
10
- /**
11
- * Context information captured when an error occurs.
12
- * This provides debugging information beyond just the error message.
13
- */
14
- export interface IErrorContext {
15
- /**
16
- * The operation that was being performed when the error occurred
17
- * e.g., 'encryptChunk', 'decryptStream', 'validateRecipientId'
18
- */
19
- operation: string;
20
-
21
- /**
22
- * Stack trace from when the error was created
23
- */
24
- stackTrace: string;
25
-
26
- /**
27
- * Relevant configuration values (sanitized to remove sensitive data)
28
- */
29
- config?: Partial<{
30
- idProviderName: string;
31
- idProviderByteLength: number;
32
- memberIdLength: number;
33
- recipientIdSize: number;
34
- curveName: string;
35
- }>;
36
-
37
- /**
38
- * Timestamp when error occurred
39
- */
40
- timestamp: Date;
41
-
42
- /**
43
- * Additional metadata specific to the error
44
- */
45
- metadata?: Record<string, unknown>;
46
- }
47
-
48
- export class ECIESError extends TypedHandleableError<
49
- typeof ECIESErrorTypeEnum,
50
- EciesStringKey
51
- > {
52
- /**
53
- * Rich context information for debugging
54
- */
55
- public readonly context?: IErrorContext;
56
-
57
- constructor(
58
- type: ECIESErrorTypeEnum,
59
- options?: HandleableErrorOptions,
60
- language?: string,
61
- otherVars?: Record<string, string | number>,
62
- context?: Partial<IErrorContext>,
63
- ) {
64
- let source: Error;
65
- if (
66
- options &&
67
- typeof options === 'object' &&
68
- 'cause' in options &&
69
- options.cause instanceof Error
70
- ) {
71
- source = options.cause;
72
- } else {
73
- source = new Error();
74
- }
75
- super(
76
- EciesComponentId,
77
- type,
78
- buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(
79
- ECIESErrorTypeEnum,
80
- ['Error', 'ECIESError'],
81
- ),
82
- source,
83
- options,
84
- language,
85
- otherVars,
86
- );
87
- this.name = 'ECIESError';
88
-
89
- // Capture context if provided
90
- if (context) {
91
- this.context = {
92
- operation: context.operation ?? 'unknown',
93
- stackTrace:
94
- context.stackTrace ?? new Error().stack ?? 'stack unavailable',
95
- config: context.config,
96
- timestamp: context.timestamp ?? new Date(),
97
- metadata: context.metadata,
98
- };
99
- }
100
- }
101
-
102
- /**
103
- * Serialize error to JSON including context
104
- */
105
- override toJSON(): Record<string, unknown> {
106
- return {
107
- name: this.name,
108
- message: this.message,
109
- type: this.type,
110
- context: this.context,
111
- cause:
112
- this.cause instanceof Error
113
- ? {
114
- name: this.cause.name,
115
- message: this.cause.message,
116
- }
117
- : undefined,
118
- };
119
- }
120
-
121
- /**
122
- * Get a detailed error report including all context
123
- */
124
- getDetailedReport(): string {
125
- const parts = [`${this.name}: ${this.message}`, `Type: ${this.type}`];
126
-
127
- if (this.context) {
128
- parts.push(`Operation: ${this.context.operation}`);
129
- parts.push(`Timestamp: ${this.context.timestamp.toISOString()}`);
130
-
131
- if (this.context.config) {
132
- parts.push('Configuration:');
133
- Object.entries(this.context.config).forEach(([key, value]) => {
134
- parts.push(` ${key}: ${value}`);
135
- });
136
- }
137
-
138
- if (this.context.metadata) {
139
- parts.push('Metadata:');
140
- Object.entries(this.context.metadata).forEach(([key, value]) => {
141
- parts.push(` ${key}: ${JSON.stringify(value)}`);
142
- });
143
- }
144
-
145
- if (this.context.stackTrace) {
146
- parts.push('\nStack Trace:');
147
- parts.push(this.context.stackTrace);
148
- }
149
- }
150
-
151
- return parts.join('\n');
152
- }
153
- }
@@ -1,130 +0,0 @@
1
- import {
2
- buildReasonMap,
3
- TypedHandleableError,
4
- } from '@digitaldefiance/i18n-lib';
5
- import { EciesStringKey } from '../enumerations';
6
- import { GuidBrandType } from '../enumerations/guid-brand-type';
7
- import { GuidErrorType } from '../enumerations/guid-error-type';
8
- import { EciesComponentId } from '../i18n-setup';
9
- import { RawGuidBuffer } from '../types';
10
-
11
- /**
12
- * Error class for handling GUID-related errors.
13
- * Provides detailed error information including the error type, optional brand, length, and GUID value.
14
- *
15
- * @example
16
- * ```typescript
17
- * throw new GuidError(GuidErrorType.InvalidGuid);
18
- * throw new GuidError(GuidErrorType.InvalidGuidUnknownLength, undefined, 17);
19
- * throw new GuidError(GuidErrorType.InvalidGuidWithDetails, undefined, undefined, buffer);
20
- * ```
21
- */
22
- export class GuidError extends TypedHandleableError<
23
- typeof GuidErrorType,
24
- EciesStringKey
25
- > {
26
- /**
27
- * Reason map cache to avoid rebuilding on every error instantiation.
28
- * This improves performance in scenarios where many errors are created.
29
- */
30
- private static readonly REASON_MAP = buildReasonMap<
31
- typeof GuidErrorType,
32
- EciesStringKey
33
- >(
34
- GuidErrorType,
35
- ['Error', 'GuidError'],
36
- new Set([
37
- GuidErrorType.InvalidGuidWithDetails,
38
- GuidErrorType.InvalidGuidUnknownBrand,
39
- GuidErrorType.InvalidGuidUnknownLength,
40
- ]),
41
- );
42
-
43
- /**
44
- * Creates a new GuidError instance.
45
- *
46
- * @param type - The type of GUID error that occurred.
47
- * @param brand - Optional GUID brand type (for brand-related errors).
48
- * @param length - Optional length value (for length-related errors).
49
- * @param guid - Optional GUID buffer (for errors involving specific GUID values).
50
- * @param language - Optional language code for error message localization.
51
- *
52
- * @throws {Error} If guid parameter is provided but is not a Buffer.
53
- */
54
- constructor(
55
- type: GuidErrorType,
56
- public readonly brand?: GuidBrandType,
57
- public readonly length?: number,
58
- public readonly guid?: RawGuidBuffer | Buffer,
59
- language?: string,
60
- ) {
61
- // Build template parameters only for the values that are provided
62
- const templateParams: Record<string, string> = {};
63
-
64
- if (brand !== undefined) {
65
- templateParams.BRAND = String(brand);
66
- }
67
-
68
- if (length !== undefined) {
69
- templateParams.LENGTH = String(length);
70
- }
71
-
72
- if (guid !== undefined) {
73
- // Defensive check to ensure guid is a Buffer
74
- if (!Buffer.isBuffer(guid)) {
75
- throw new Error('GuidError: guid parameter must be a Buffer');
76
- }
77
- templateParams.GUID = guid.toString('hex');
78
- }
79
-
80
- super(
81
- EciesComponentId,
82
- type,
83
- GuidError.REASON_MAP,
84
- new Error(), // source error
85
- undefined, // options
86
- language,
87
- templateParams,
88
- );
89
- this.name = 'GuidError';
90
-
91
- // Maintains proper prototype chain for instanceof checks
92
- Object.setPrototypeOf(this, GuidError.prototype);
93
- }
94
-
95
- /**
96
- * Returns a string representation of the error with all relevant details.
97
- * @returns A detailed error string.
98
- */
99
- public override toString(): string {
100
- const parts = [`${this.name}: ${this.message}`];
101
-
102
- if (this.brand !== undefined) {
103
- parts.push(`Brand: ${this.brand}`);
104
- }
105
-
106
- if (this.length !== undefined) {
107
- parts.push(`Length: ${this.length}`);
108
- }
109
-
110
- if (this.guid !== undefined) {
111
- parts.push(`GUID: ${this.guid.toString('hex')}`);
112
- }
113
-
114
- return parts.join(' | ');
115
- }
116
-
117
- /**
118
- * Serializes the error to JSON including all custom properties.
119
- * @returns JSON representation of the error.
120
- */
121
- public override toJSON(): Record<string, unknown> {
122
- const baseJson = super.toJSON();
123
- return {
124
- ...baseJson,
125
- brand: this.brand,
126
- length: this.length,
127
- guid: this.guid ? this.guid.toString('hex') : undefined,
128
- };
129
- }
130
- }
@@ -1,40 +0,0 @@
1
- import { IdProviderErrorType } from '../enumerations/id-provider-error-type';
2
- import { HandleableErrorOptions, TypedHandleableError, buildReasonMap } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- /**
7
- * Error class for ID provider operations.
8
- * Provides i18n support for errors during ID generation, validation, serialization, and deserialization.
9
- */
10
- export class IdProviderError extends TypedHandleableError<typeof IdProviderErrorType, EciesStringKey> {
11
- /**
12
- * Reason map cache to avoid rebuilding on every error instantiation.
13
- */
14
- private static readonly REASON_MAP = buildReasonMap<typeof IdProviderErrorType, EciesStringKey>(
15
- IdProviderErrorType,
16
- ['Error', 'IdProviderError']
17
- );
18
-
19
- /**
20
- * Creates a new IdProviderError instance.
21
- *
22
- * @param type - The type of ID provider error that occurred.
23
- * @param options - Optional error handling options.
24
- * @param language - Optional language code for error message localization.
25
- * @param templateParams - Optional parameters for error message templates.
26
- */
27
- constructor(
28
- type: IdProviderErrorType,
29
- options?: HandleableErrorOptions,
30
- language?: string,
31
- templateParams?: Record<string, string | number>
32
- ) {
33
- const source = options?.cause instanceof Error ? options.cause : new Error();
34
- super(EciesComponentId, type, IdProviderError.REASON_MAP, source, options, language, templateParams);
35
- this.name = 'IdProviderError';
36
-
37
- // Maintains proper prototype chain for instanceof checks
38
- Object.setPrototypeOf(this, IdProviderError.prototype);
39
- }
40
- }
@@ -1,23 +0,0 @@
1
- import { InvalidEmailErrorType } from '../enumerations/invalid-email-type';
2
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- export class InvalidEmailError extends TypedHandleableError<typeof InvalidEmailErrorType, EciesStringKey> {
7
- public readonly email?: string;
8
- constructor(type: InvalidEmailErrorType, email?: string, options?: HandleableErrorOptions, language?: string) {
9
- const source = options?.cause instanceof Error ? options.cause : new Error();
10
- super(
11
- EciesComponentId,
12
- type,
13
- buildReasonMap<typeof InvalidEmailErrorType, EciesStringKey>(InvalidEmailErrorType, ['Error', 'InvalidEmailError']),
14
- source,
15
- { statusCode: 422, ...options },
16
- language, {
17
- email: email ?? ''
18
- }
19
- );
20
- this.email = email;
21
- this.name = 'InvalidEmailError';
22
- }
23
- }
@@ -1,19 +0,0 @@
1
- import { LengthErrorType } from '../enumerations/length-error-type';
2
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- export class LengthError extends TypedHandleableError<typeof LengthErrorType, EciesStringKey> {
7
- constructor(type: LengthErrorType, options?: HandleableErrorOptions, language?: string) {
8
- const source = options?.cause instanceof Error ? options.cause : new Error();
9
- super(
10
- EciesComponentId,
11
- type,
12
- buildReasonMap<typeof LengthErrorType, EciesStringKey>(LengthErrorType, ['Error', 'LengthError']),
13
- source,
14
- options,
15
- language
16
- );
17
- this.name = 'LengthError';
18
- }
19
- }
@@ -1,20 +0,0 @@
1
- import { MemberErrorType } from '../enumerations/member-error-type';
2
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- export class MemberError extends TypedHandleableError<typeof MemberErrorType, EciesStringKey> {
7
-
8
- constructor(type: MemberErrorType, options?: HandleableErrorOptions, language?: string) {
9
- const source = options?.cause instanceof Error ? options.cause : new Error();
10
- super(
11
- EciesComponentId,
12
- type,
13
- buildReasonMap<typeof MemberErrorType, EciesStringKey>(MemberErrorType, ['Error', 'MemberError']),
14
- source,
15
- options,
16
- language
17
- );
18
- this.name = 'MemberError';
19
- }
20
- }
@@ -1,20 +0,0 @@
1
- import { Pbkdf2ErrorType } from '../enumerations/pbkdf2-error-type';
2
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- export class Pbkdf2Error extends TypedHandleableError<typeof Pbkdf2ErrorType, EciesStringKey> {
7
-
8
- constructor(type: Pbkdf2ErrorType, options?: HandleableErrorOptions, language?: string) {
9
- const source = options?.cause instanceof Error ? options.cause : new Error();
10
- super(
11
- EciesComponentId,
12
- type,
13
- buildReasonMap<typeof Pbkdf2ErrorType, EciesStringKey>(Pbkdf2ErrorType, ['Error', 'Pbkdf2Error']),
14
- source,
15
- options,
16
- language
17
- );
18
- this.name = 'Pbkdf2Error';
19
- }
20
- }
@@ -1,17 +0,0 @@
1
- import { SecureStorageErrorType } from '../enumerations/secure-storage-error-type';
2
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
3
- import { EciesStringKey } from '../enumerations/ecies-string-key';
4
- import { EciesComponentId } from '../i18n-setup';
5
-
6
- export class SecureStorageError extends TypedHandleableError<typeof SecureStorageErrorType, EciesStringKey> {
7
- constructor(type: SecureStorageErrorType, options?: HandleableErrorOptions, language?: string) {
8
- const source = options?.cause instanceof Error ? options.cause : new Error();
9
- const reasonMap = buildReasonMap<typeof SecureStorageErrorType, EciesStringKey>(
10
- SecureStorageErrorType,
11
- ['Error', 'SecureStorageError']
12
- );
13
-
14
- super(EciesComponentId, type, reasonMap, source, options, language);
15
- this.name = 'SecureStorageError';
16
- }
17
- }
@@ -1,21 +0,0 @@
1
- import { buildReasonMap, HandleableErrorOptions, TypedHandleableError } from '@digitaldefiance/i18n-lib';
2
- import { ECIESErrorTypeEnum, EciesStringKey } from '../enumerations';
3
- import { EciesComponentId } from '../i18n-setup';
4
-
5
- export class SimpleECIESError extends TypedHandleableError<typeof ECIESErrorTypeEnum, EciesStringKey> {
6
- constructor(
7
- type: ECIESErrorTypeEnum,
8
- options?: HandleableErrorOptions,
9
- language?: string,
10
- otherVars?: Record<string, string | number>
11
- ) {
12
- const source = options?.cause instanceof Error ? options.cause : new Error();
13
- const reasonMap = buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(
14
- ECIESErrorTypeEnum,
15
- ['Error', 'ECIESError']
16
- );
17
-
18
- super(EciesComponentId, type, reasonMap, source, options, language, otherVars);
19
- this.name = 'SimpleECIESError';
20
- }
21
- }
@@ -1,6 +0,0 @@
1
- export class SimpleTestError extends Error {
2
- constructor(message: string) {
3
- super(message);
4
- this.name = 'SimpleTestError';
5
- }
6
- }
package/src/i18n-setup.ts DELETED
@@ -1,130 +0,0 @@
1
- /**
2
- * ECIES i18n Setup - v2.0 Architecture
3
- * Uses i18n-lib 2.0 patterns with runtime validation
4
- */
5
-
6
- import {
7
- I18nEngine,
8
- LanguageCodes,
9
- createDefaultLanguages,
10
- createCoreComponentRegistration,
11
- } from '@digitaldefiance/i18n-lib';
12
- import type { ComponentConfig, EngineConfig } from '@digitaldefiance/i18n-lib';
13
- import { EciesStringKey } from './enumerations/ecies-string-key';
14
- import { englishTranslations } from './translations/en-US';
15
- import { frenchTranslations } from './translations/fr';
16
- import { spanishTranslations } from './translations/es';
17
- import { germanTranslations } from './translations/de';
18
- import { mandarinChineseTranslations } from './translations/zh-cn';
19
- import { japaneseTranslations } from './translations/ja';
20
- import { ukrainianTranslations } from './translations/uk';
21
-
22
- export const EciesI18nEngineKey = 'DigitalDefiance.Ecies.I18nEngine' as const;
23
- export const EciesComponentId = 'ecies' as const;
24
-
25
- /**
26
- * Create ECIES component configuration with all translations
27
- * Note: Includes all 8 supported languages
28
- */
29
- export function createEciesComponentConfig(): ComponentConfig {
30
- return {
31
- id: EciesComponentId,
32
- strings: {
33
- [LanguageCodes.EN_US]: englishTranslations,
34
- [LanguageCodes.EN_GB]: englishTranslations,
35
- [LanguageCodes.FR]: frenchTranslations,
36
- [LanguageCodes.ES]: spanishTranslations,
37
- [LanguageCodes.DE]: germanTranslations,
38
- [LanguageCodes.ZH_CN]: mandarinChineseTranslations,
39
- [LanguageCodes.JA]: japaneseTranslations,
40
- [LanguageCodes.UK]: ukrainianTranslations,
41
- },
42
- };
43
- }
44
-
45
- /**
46
- * Create ECIES i18n engine instance
47
- * Uses i18n 2.0 pattern with runtime validation
48
- * IMPORTANT: Uses 'default' as instance key so TypedHandleableError can find it
49
- */
50
- function createInstance(config?: EngineConfig): I18nEngine {
51
- const engine = I18nEngine.registerIfNotExists('default', createDefaultLanguages(), config);
52
-
53
- // Register core component first (required for error messages)
54
- const coreReg = createCoreComponentRegistration();
55
- engine.registerIfNotExists({
56
- id: coreReg.component.id,
57
- strings: coreReg.strings as Record<string, Record<string, string>>,
58
- });
59
-
60
- // Register ECIES component with aliases
61
- const eciesConfig = createEciesComponentConfig();
62
- const result = engine.registerIfNotExists({
63
- ...eciesConfig,
64
- aliases: ['EciesStringKey']
65
- });
66
-
67
- // Warn about missing translations (non-blocking)
68
- if (!result.isValid && result.errors.length > 0) {
69
- console.warn(
70
- `ECIES component has ${result.errors.length} errors`,
71
- result.errors.slice(0, 5) // Show first 5
72
- );
73
- }
74
-
75
- return engine;
76
- }
77
-
78
- /**
79
- * Lazy initialization with Proxy (like core-i18n.ts pattern)
80
- */
81
- let _eciesEngine: I18nEngine | undefined;
82
-
83
- export function getEciesI18nEngine(config?: EngineConfig): I18nEngine {
84
- if (!_eciesEngine || !I18nEngine.hasInstance('default')) {
85
- _eciesEngine = createInstance(config);
86
- }
87
- return _eciesEngine;
88
- }
89
-
90
- /**
91
- * Proxy for backward compatibility
92
- */
93
- export const eciesI18nEngine = new Proxy({} as I18nEngine, {
94
- get(target, prop) {
95
- return getEciesI18nEngine()[prop as keyof I18nEngine];
96
- }
97
- });
98
-
99
- /**
100
- * Reset function for tests
101
- */
102
- export function resetEciesI18nEngine(): void {
103
- _eciesEngine = undefined;
104
- }
105
-
106
- /**
107
- * Helper to translate ECIES strings
108
- */
109
- export function getEciesTranslation(
110
- stringKey: EciesStringKey,
111
- variables?: Record<string, string | number>,
112
- language?: string,
113
- ): string {
114
- return getEciesI18nEngine().translate(EciesComponentId, stringKey, variables, language);
115
- }
116
-
117
- /**
118
- * Safe translation with fallback
119
- */
120
- export function safeEciesTranslation(
121
- stringKey: EciesStringKey,
122
- variables?: Record<string, string | number>,
123
- language?: string,
124
- ): string {
125
- try {
126
- return getEciesTranslation(stringKey, variables, language);
127
- } catch {
128
- return `[${stringKey}]`;
129
- }
130
- }
@@ -1,4 +0,0 @@
1
- export interface IChecksumConfig {
2
- algorithm: string;
3
- encoding: 'hex' | 'base64';
4
- }
@@ -1,13 +0,0 @@
1
- export interface IChecksumConsts {
2
- /** Default hash bits for SHA3 */
3
- SHA3_DEFAULT_HASH_BITS: number;
4
-
5
- /** Length of a SHA3 checksum buffer in bytes */
6
- SHA3_BUFFER_LENGTH: number;
7
-
8
- /** Algorithm name for checksums */
9
- ALGORITHM: string;
10
-
11
- /** Encoding for checksums */
12
- ENCODING: 'hex' | 'base64';
13
- }