@digitaldefiance/ecies-lib 1.1.23 → 1.1.24

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 (347) hide show
  1. package/README.md +4 -0
  2. package/package.json +13 -33
  3. package/src/constants.ts +474 -0
  4. package/src/email-string.ts +83 -0
  5. package/src/enumerations/ecies-encryption-type.ts +102 -0
  6. package/src/enumerations/ecies-error-type.ts +31 -0
  7. package/src/enumerations/ecies-string-key.ts +108 -0
  8. package/src/enumerations/guid-brand-type.ts +26 -0
  9. package/src/enumerations/guid-error-type.ts +6 -0
  10. package/{dist/enumerations/index.d.ts → src/enumerations/index.ts} +0 -1
  11. package/src/enumerations/invalid-email-type.ts +5 -0
  12. package/src/enumerations/length-encoding-type.ts +6 -0
  13. package/src/enumerations/length-error-type.ts +5 -0
  14. package/src/enumerations/member-error-type.ts +106 -0
  15. package/{dist/enumerations/member-type.d.ts → src/enumerations/member-type.ts} +7 -6
  16. package/src/enumerations/password-login-error-type.ts +4 -0
  17. package/src/enumerations/pbkdf2-error-type.ts +5 -0
  18. package/src/enumerations/pbkdf2-profile.ts +5 -0
  19. package/src/enumerations/secure-storage-error-type.ts +5 -0
  20. package/src/errors/disposed.ts +15 -0
  21. package/src/errors/ecies.ts +34 -0
  22. package/src/errors/guid.ts +34 -0
  23. package/{dist/errors/index.d.ts → src/errors/index.ts} +0 -1
  24. package/src/errors/invalid-email.ts +11 -0
  25. package/src/errors/length.ts +11 -0
  26. package/src/errors/member.ts +12 -0
  27. package/src/errors/pbkdf2.ts +12 -0
  28. package/src/errors/secure-storage.ts +13 -0
  29. package/src/errors/simple-ecies.ts +18 -0
  30. package/src/errors/simple-test-error.ts +6 -0
  31. package/src/guid.ts +800 -0
  32. package/src/i18n-setup.ts +1312 -0
  33. package/{dist/index.d.ts → src/index.ts} +0 -1
  34. package/src/interfaces/checksum-config.ts +4 -0
  35. package/src/interfaces/checksum-consts.ts +13 -0
  36. package/src/interfaces/constants.ts +48 -0
  37. package/src/interfaces/ecies-config.ts +8 -0
  38. package/src/interfaces/ecies-consts.ts +70 -0
  39. package/src/interfaces/ecies-file-service.ts +6 -0
  40. package/src/interfaces/guid.ts +53 -0
  41. package/{dist/interfaces/index.d.ts → src/interfaces/index.ts} +0 -1
  42. package/src/interfaces/library-error.ts +23 -0
  43. package/src/interfaces/member-operational.ts +54 -0
  44. package/{dist/interfaces/member-storage.d.ts → src/interfaces/member-storage.ts} +11 -10
  45. package/{dist/interfaces/member-with-mnemonic.d.ts → src/interfaces/member-with-mnemonic.ts} +3 -3
  46. package/src/interfaces/pbkdf2-config.ts +6 -0
  47. package/src/interfaces/pbkdf2-consts.ts +10 -0
  48. package/src/interfaces/pbkdf2-result.ts +5 -0
  49. package/src/member.ts +429 -0
  50. package/{dist/pbkdf2-profiles.d.ts → src/pbkdf2-profiles.ts} +2 -2
  51. package/src/phone-number.ts +18 -0
  52. package/src/regexes.ts +10 -0
  53. package/src/secure-buffer.ts +183 -0
  54. package/src/secure-string.ts +229 -0
  55. package/src/services/aes-gcm.ts +177 -0
  56. package/src/services/ecies/README.md +147 -0
  57. package/src/services/ecies/crypto-core.ts +180 -0
  58. package/src/services/ecies/example.ts +185 -0
  59. package/src/services/ecies/file.ts +167 -0
  60. package/{dist/services/ecies/index.d.ts → src/services/ecies/index.ts} +3 -1
  61. package/src/services/ecies/integration.ts +241 -0
  62. package/src/services/ecies/interfaces.ts +59 -0
  63. package/src/services/ecies/manual-test.ts +219 -0
  64. package/src/services/ecies/multi-recipient.ts +394 -0
  65. package/src/services/ecies/service.ts +317 -0
  66. package/src/services/ecies/signature.ts +93 -0
  67. package/src/services/ecies/single-recipient.ts +340 -0
  68. package/{dist/services/index.d.ts → src/services/index.ts} +0 -1
  69. package/src/services/password-login.ts +228 -0
  70. package/src/services/pbkdf2.ts +172 -0
  71. package/src/services/xor.ts +65 -0
  72. package/src/types/deep-partial.ts +11 -0
  73. package/{dist/types.d.ts → src/types.ts} +10 -4
  74. package/src/utils.ts +331 -0
  75. package/dist/constants.d.ts +0 -46
  76. package/dist/constants.d.ts.map +0 -1
  77. package/dist/constants.js +0 -358
  78. package/dist/constants.js.map +0 -1
  79. package/dist/email-string.d.ts +0 -42
  80. package/dist/email-string.d.ts.map +0 -1
  81. package/dist/email-string.js +0 -75
  82. package/dist/email-string.js.map +0 -1
  83. package/dist/enumerations/ecies-encryption-type.d.ts +0 -15
  84. package/dist/enumerations/ecies-encryption-type.d.ts.map +0 -1
  85. package/dist/enumerations/ecies-encryption-type.js +0 -71
  86. package/dist/enumerations/ecies-encryption-type.js.map +0 -1
  87. package/dist/enumerations/ecies-error-type.d.ts +0 -32
  88. package/dist/enumerations/ecies-error-type.d.ts.map +0 -1
  89. package/dist/enumerations/ecies-error-type.js +0 -36
  90. package/dist/enumerations/ecies-error-type.js.map +0 -1
  91. package/dist/enumerations/ecies-string-key.d.ts +0 -96
  92. package/dist/enumerations/ecies-string-key.d.ts.map +0 -1
  93. package/dist/enumerations/ecies-string-key.js +0 -105
  94. package/dist/enumerations/ecies-string-key.js.map +0 -1
  95. package/dist/enumerations/guid-brand-type.d.ts +0 -27
  96. package/dist/enumerations/guid-brand-type.d.ts.map +0 -1
  97. package/dist/enumerations/guid-brand-type.js +0 -31
  98. package/dist/enumerations/guid-brand-type.js.map +0 -1
  99. package/dist/enumerations/guid-error-type.d.ts +0 -7
  100. package/dist/enumerations/guid-error-type.d.ts.map +0 -1
  101. package/dist/enumerations/guid-error-type.js +0 -11
  102. package/dist/enumerations/guid-error-type.js.map +0 -1
  103. package/dist/enumerations/index.d.ts.map +0 -1
  104. package/dist/enumerations/index.js +0 -31
  105. package/dist/enumerations/index.js.map +0 -1
  106. package/dist/enumerations/invalid-email-type.d.ts +0 -6
  107. package/dist/enumerations/invalid-email-type.d.ts.map +0 -1
  108. package/dist/enumerations/invalid-email-type.js +0 -10
  109. package/dist/enumerations/invalid-email-type.js.map +0 -1
  110. package/dist/enumerations/length-encoding-type.d.ts +0 -7
  111. package/dist/enumerations/length-encoding-type.d.ts.map +0 -1
  112. package/dist/enumerations/length-encoding-type.js +0 -11
  113. package/dist/enumerations/length-encoding-type.js.map +0 -1
  114. package/dist/enumerations/length-error-type.d.ts +0 -6
  115. package/dist/enumerations/length-error-type.d.ts.map +0 -1
  116. package/dist/enumerations/length-error-type.js +0 -10
  117. package/dist/enumerations/length-error-type.js.map +0 -1
  118. package/dist/enumerations/member-error-type.d.ts +0 -87
  119. package/dist/enumerations/member-error-type.d.ts.map +0 -1
  120. package/dist/enumerations/member-error-type.js +0 -91
  121. package/dist/enumerations/member-error-type.js.map +0 -1
  122. package/dist/enumerations/member-type.d.ts.map +0 -1
  123. package/dist/enumerations/member-type.js +0 -19
  124. package/dist/enumerations/member-type.js.map +0 -1
  125. package/dist/enumerations/password-login-error-type.d.ts +0 -5
  126. package/dist/enumerations/password-login-error-type.d.ts.map +0 -1
  127. package/dist/enumerations/password-login-error-type.js +0 -9
  128. package/dist/enumerations/password-login-error-type.js.map +0 -1
  129. package/dist/enumerations/pbkdf2-error-type.d.ts +0 -6
  130. package/dist/enumerations/pbkdf2-error-type.d.ts.map +0 -1
  131. package/dist/enumerations/pbkdf2-error-type.js +0 -10
  132. package/dist/enumerations/pbkdf2-error-type.js.map +0 -1
  133. package/dist/enumerations/pbkdf2-profile.d.ts +0 -6
  134. package/dist/enumerations/pbkdf2-profile.d.ts.map +0 -1
  135. package/dist/enumerations/pbkdf2-profile.js +0 -10
  136. package/dist/enumerations/pbkdf2-profile.js.map +0 -1
  137. package/dist/enumerations/secure-storage-error-type.d.ts +0 -6
  138. package/dist/enumerations/secure-storage-error-type.d.ts.map +0 -1
  139. package/dist/enumerations/secure-storage-error-type.js +0 -10
  140. package/dist/enumerations/secure-storage-error-type.js.map +0 -1
  141. package/dist/errors/disposed.d.ts +0 -4
  142. package/dist/errors/disposed.d.ts.map +0 -1
  143. package/dist/errors/disposed.js +0 -20
  144. package/dist/errors/disposed.js.map +0 -1
  145. package/dist/errors/ecies.d.ts +0 -7
  146. package/dist/errors/ecies.d.ts.map +0 -1
  147. package/dist/errors/ecies.js +0 -15
  148. package/dist/errors/ecies.js.map +0 -1
  149. package/dist/errors/guid.d.ts +0 -15
  150. package/dist/errors/guid.d.ts.map +0 -1
  151. package/dist/errors/guid.js +0 -26
  152. package/dist/errors/guid.js.map +0 -1
  153. package/dist/errors/index.d.ts.map +0 -1
  154. package/dist/errors/index.js +0 -25
  155. package/dist/errors/index.js.map +0 -1
  156. package/dist/errors/invalid-email.d.ts +0 -7
  157. package/dist/errors/invalid-email.d.ts.map +0 -1
  158. package/dist/errors/invalid-email.js +0 -14
  159. package/dist/errors/invalid-email.js.map +0 -1
  160. package/dist/errors/length.d.ts +0 -7
  161. package/dist/errors/length.d.ts.map +0 -1
  162. package/dist/errors/length.js +0 -14
  163. package/dist/errors/length.js.map +0 -1
  164. package/dist/errors/member.d.ts +0 -7
  165. package/dist/errors/member.d.ts.map +0 -1
  166. package/dist/errors/member.js +0 -14
  167. package/dist/errors/member.js.map +0 -1
  168. package/dist/errors/pbkdf2.d.ts +0 -7
  169. package/dist/errors/pbkdf2.d.ts.map +0 -1
  170. package/dist/errors/pbkdf2.js +0 -14
  171. package/dist/errors/pbkdf2.js.map +0 -1
  172. package/dist/errors/secure-storage.d.ts +0 -7
  173. package/dist/errors/secure-storage.d.ts.map +0 -1
  174. package/dist/errors/secure-storage.js +0 -15
  175. package/dist/errors/secure-storage.js.map +0 -1
  176. package/dist/errors/simple-ecies.d.ts +0 -6
  177. package/dist/errors/simple-ecies.d.ts.map +0 -1
  178. package/dist/errors/simple-ecies.js +0 -15
  179. package/dist/errors/simple-ecies.js.map +0 -1
  180. package/dist/errors/simple-test-error.d.ts +0 -4
  181. package/dist/errors/simple-test-error.d.ts.map +0 -1
  182. package/dist/errors/simple-test-error.js +0 -11
  183. package/dist/errors/simple-test-error.js.map +0 -1
  184. package/dist/guid.d.ts +0 -153
  185. package/dist/guid.d.ts.map +0 -1
  186. package/dist/guid.js +0 -647
  187. package/dist/guid.js.map +0 -1
  188. package/dist/i18n-setup.d.ts +0 -24
  189. package/dist/i18n-setup.d.ts.map +0 -1
  190. package/dist/i18n-setup.js +0 -837
  191. package/dist/i18n-setup.js.map +0 -1
  192. package/dist/index.d.ts.map +0 -1
  193. package/dist/index.js +0 -32
  194. package/dist/index.js.map +0 -1
  195. package/dist/interfaces/checksum-config.d.ts +0 -5
  196. package/dist/interfaces/checksum-config.d.ts.map +0 -1
  197. package/dist/interfaces/checksum-config.js +0 -3
  198. package/dist/interfaces/checksum-config.js.map +0 -1
  199. package/dist/interfaces/checksum-consts.d.ts +0 -11
  200. package/dist/interfaces/checksum-consts.d.ts.map +0 -1
  201. package/dist/interfaces/checksum-consts.js +0 -3
  202. package/dist/interfaces/checksum-consts.js.map +0 -1
  203. package/dist/interfaces/constants.d.ts +0 -45
  204. package/dist/interfaces/constants.d.ts.map +0 -1
  205. package/dist/interfaces/constants.js +0 -3
  206. package/dist/interfaces/constants.js.map +0 -1
  207. package/dist/interfaces/ecies-config.d.ts +0 -9
  208. package/dist/interfaces/ecies-config.d.ts.map +0 -1
  209. package/dist/interfaces/ecies-config.js +0 -3
  210. package/dist/interfaces/ecies-config.js.map +0 -1
  211. package/dist/interfaces/ecies-consts.d.ts +0 -58
  212. package/dist/interfaces/ecies-consts.d.ts.map +0 -1
  213. package/dist/interfaces/ecies-consts.js +0 -3
  214. package/dist/interfaces/ecies-consts.js.map +0 -1
  215. package/dist/interfaces/ecies-file-service.d.ts +0 -7
  216. package/dist/interfaces/ecies-file-service.d.ts.map +0 -1
  217. package/dist/interfaces/ecies-file-service.js +0 -3
  218. package/dist/interfaces/ecies-file-service.js.map +0 -1
  219. package/dist/interfaces/guid.d.ts +0 -45
  220. package/dist/interfaces/guid.d.ts.map +0 -1
  221. package/dist/interfaces/guid.js +0 -3
  222. package/dist/interfaces/guid.js.map +0 -1
  223. package/dist/interfaces/index.d.ts.map +0 -1
  224. package/dist/interfaces/index.js +0 -30
  225. package/dist/interfaces/index.js.map +0 -1
  226. package/dist/interfaces/library-error.d.ts +0 -23
  227. package/dist/interfaces/library-error.d.ts.map +0 -1
  228. package/dist/interfaces/library-error.js +0 -3
  229. package/dist/interfaces/library-error.js.map +0 -1
  230. package/dist/interfaces/member-operational.d.ts +0 -40
  231. package/dist/interfaces/member-operational.d.ts.map +0 -1
  232. package/dist/interfaces/member-operational.js +0 -3
  233. package/dist/interfaces/member-operational.js.map +0 -1
  234. package/dist/interfaces/member-storage.d.ts.map +0 -1
  235. package/dist/interfaces/member-storage.js +0 -3
  236. package/dist/interfaces/member-storage.js.map +0 -1
  237. package/dist/interfaces/member-with-mnemonic.d.ts.map +0 -1
  238. package/dist/interfaces/member-with-mnemonic.js +0 -3
  239. package/dist/interfaces/member-with-mnemonic.js.map +0 -1
  240. package/dist/interfaces/pbkdf2-config.d.ts +0 -7
  241. package/dist/interfaces/pbkdf2-config.d.ts.map +0 -1
  242. package/dist/interfaces/pbkdf2-config.js +0 -3
  243. package/dist/interfaces/pbkdf2-config.js.map +0 -1
  244. package/dist/interfaces/pbkdf2-consts.d.ts +0 -9
  245. package/dist/interfaces/pbkdf2-consts.d.ts.map +0 -1
  246. package/dist/interfaces/pbkdf2-consts.js +0 -3
  247. package/dist/interfaces/pbkdf2-consts.js.map +0 -1
  248. package/dist/interfaces/pbkdf2-result.d.ts +0 -6
  249. package/dist/interfaces/pbkdf2-result.d.ts.map +0 -1
  250. package/dist/interfaces/pbkdf2-result.js +0 -3
  251. package/dist/interfaces/pbkdf2-result.js.map +0 -1
  252. package/dist/member.d.ts +0 -66
  253. package/dist/member.d.ts.map +0 -1
  254. package/dist/member.js +0 -271
  255. package/dist/member.js.map +0 -1
  256. package/dist/pbkdf2-profiles.d.ts.map +0 -1
  257. package/dist/pbkdf2-profiles.js +0 -3
  258. package/dist/pbkdf2-profiles.js.map +0 -1
  259. package/dist/phone-number.d.ts +0 -6
  260. package/dist/phone-number.d.ts.map +0 -1
  261. package/dist/phone-number.js +0 -22
  262. package/dist/phone-number.js.map +0 -1
  263. package/dist/regexes.d.ts +0 -7
  264. package/dist/regexes.d.ts.map +0 -1
  265. package/dist/regexes.js +0 -10
  266. package/dist/regexes.js.map +0 -1
  267. package/dist/secure-buffer.d.ts +0 -38
  268. package/dist/secure-buffer.d.ts.map +0 -1
  269. package/dist/secure-buffer.js +0 -168
  270. package/dist/secure-buffer.js.map +0 -1
  271. package/dist/secure-string.d.ts +0 -39
  272. package/dist/secure-string.d.ts.map +0 -1
  273. package/dist/secure-string.js +0 -195
  274. package/dist/secure-string.js.map +0 -1
  275. package/dist/services/aes-gcm.d.ts +0 -57
  276. package/dist/services/aes-gcm.d.ts.map +0 -1
  277. package/dist/services/aes-gcm.js +0 -111
  278. package/dist/services/aes-gcm.js.map +0 -1
  279. package/dist/services/ecies/crypto-core.d.ts +0 -51
  280. package/dist/services/ecies/crypto-core.d.ts.map +0 -1
  281. package/dist/services/ecies/crypto-core.js +0 -139
  282. package/dist/services/ecies/crypto-core.js.map +0 -1
  283. package/dist/services/ecies/example.d.ts +0 -25
  284. package/dist/services/ecies/example.d.ts.map +0 -1
  285. package/dist/services/ecies/example.js +0 -128
  286. package/dist/services/ecies/example.js.map +0 -1
  287. package/dist/services/ecies/file.d.ts +0 -18
  288. package/dist/services/ecies/file.d.ts.map +0 -1
  289. package/dist/services/ecies/file.js +0 -110
  290. package/dist/services/ecies/file.js.map +0 -1
  291. package/dist/services/ecies/index.d.ts.map +0 -1
  292. package/dist/services/ecies/index.js +0 -57
  293. package/dist/services/ecies/index.js.map +0 -1
  294. package/dist/services/ecies/integration.d.ts +0 -59
  295. package/dist/services/ecies/integration.d.ts.map +0 -1
  296. package/dist/services/ecies/integration.js +0 -172
  297. package/dist/services/ecies/integration.js.map +0 -1
  298. package/dist/services/ecies/interfaces.d.ts +0 -51
  299. package/dist/services/ecies/interfaces.d.ts.map +0 -1
  300. package/dist/services/ecies/interfaces.js +0 -6
  301. package/dist/services/ecies/interfaces.js.map +0 -1
  302. package/dist/services/ecies/manual-test.d.ts +0 -29
  303. package/dist/services/ecies/manual-test.d.ts.map +0 -1
  304. package/dist/services/ecies/manual-test.js +0 -171
  305. package/dist/services/ecies/manual-test.js.map +0 -1
  306. package/dist/services/ecies/multi-recipient.d.ts +0 -52
  307. package/dist/services/ecies/multi-recipient.d.ts.map +0 -1
  308. package/dist/services/ecies/multi-recipient.js +0 -243
  309. package/dist/services/ecies/multi-recipient.js.map +0 -1
  310. package/dist/services/ecies/service.d.ts +0 -104
  311. package/dist/services/ecies/service.d.ts.map +0 -1
  312. package/dist/services/ecies/service.js +0 -192
  313. package/dist/services/ecies/service.js.map +0 -1
  314. package/dist/services/ecies/signature.d.ts +0 -27
  315. package/dist/services/ecies/signature.d.ts.map +0 -1
  316. package/dist/services/ecies/signature.js +0 -76
  317. package/dist/services/ecies/signature.js.map +0 -1
  318. package/dist/services/ecies/single-recipient.d.ts +0 -46
  319. package/dist/services/ecies/single-recipient.d.ts.map +0 -1
  320. package/dist/services/ecies/single-recipient.js +0 -212
  321. package/dist/services/ecies/single-recipient.js.map +0 -1
  322. package/dist/services/index.d.ts.map +0 -1
  323. package/dist/services/index.js +0 -22
  324. package/dist/services/index.js.map +0 -1
  325. package/dist/services/password-login.d.ts +0 -49
  326. package/dist/services/password-login.d.ts.map +0 -1
  327. package/dist/services/password-login.js +0 -121
  328. package/dist/services/password-login.js.map +0 -1
  329. package/dist/services/pbkdf2.d.ts +0 -56
  330. package/dist/services/pbkdf2.d.ts.map +0 -1
  331. package/dist/services/pbkdf2.js +0 -114
  332. package/dist/services/pbkdf2.js.map +0 -1
  333. package/dist/services/xor.d.ts +0 -37
  334. package/dist/services/xor.d.ts.map +0 -1
  335. package/dist/services/xor.js +0 -67
  336. package/dist/services/xor.js.map +0 -1
  337. package/dist/types/deep-partial.d.ts +0 -4
  338. package/dist/types/deep-partial.d.ts.map +0 -1
  339. package/dist/types/deep-partial.js +0 -3
  340. package/dist/types/deep-partial.js.map +0 -1
  341. package/dist/types.d.ts.map +0 -1
  342. package/dist/types.js +0 -3
  343. package/dist/types.js.map +0 -1
  344. package/dist/utils.d.ts +0 -68
  345. package/dist/utils.d.ts.map +0 -1
  346. package/dist/utils.js +0 -288
  347. package/dist/utils.js.map +0 -1
@@ -0,0 +1,102 @@
1
+ import { ECIESError } from '../errors/ecies';
2
+ import { getEciesI18nEngine } from '../i18n-setup';
3
+ import { ECIESErrorTypeEnum } from './ecies-error-type';
4
+
5
+ export type EciesEncryptionType = 'simple' | 'single' | 'multiple';
6
+
7
+ export enum EciesEncryptionTypeEnum {
8
+ Simple = 33,
9
+ Single = 66,
10
+ Multiple = 99,
11
+ }
12
+
13
+ export const EciesEncryptionTypeMap: Record<
14
+ EciesEncryptionType,
15
+ EciesEncryptionTypeEnum
16
+ > = {
17
+ simple: EciesEncryptionTypeEnum.Simple,
18
+ single: EciesEncryptionTypeEnum.Single,
19
+ multiple: EciesEncryptionTypeEnum.Multiple,
20
+ };
21
+
22
+ export const EciesEncryptionTypeStringMap: Record<EciesEncryptionType, string> =
23
+ {
24
+ simple: 'simple',
25
+ single: 'single',
26
+ multiple: 'multiple',
27
+ };
28
+
29
+ export const EciesEncryptionTypeEnumTypeMap: Record<
30
+ EciesEncryptionTypeEnum,
31
+ EciesEncryptionType
32
+ > = {
33
+ [EciesEncryptionTypeEnum.Simple]: 'simple',
34
+ [EciesEncryptionTypeEnum.Single]: 'single',
35
+ [EciesEncryptionTypeEnum.Multiple]: 'multiple',
36
+ };
37
+
38
+ export const EciesEncryptionTypeEnumStringMap: Record<
39
+ EciesEncryptionTypeEnum,
40
+ string
41
+ > = {
42
+ [EciesEncryptionTypeEnum.Simple]: 'simple',
43
+ [EciesEncryptionTypeEnum.Single]: 'single',
44
+ [EciesEncryptionTypeEnum.Multiple]: 'multiple',
45
+ };
46
+
47
+ export function encryptionTypeToString(
48
+ type: EciesEncryptionType | EciesEncryptionTypeEnum,
49
+ ): string {
50
+ // if enum
51
+ let resultType: EciesEncryptionType;
52
+ if (typeof type === 'number') {
53
+ resultType = EciesEncryptionTypeEnumTypeMap[type];
54
+ if (resultType === undefined) {
55
+ throw new ECIESError(
56
+ ECIESErrorTypeEnum.InvalidEncryptionType,
57
+ getEciesI18nEngine() as any,
58
+ );
59
+ }
60
+ } else {
61
+ resultType = type;
62
+ }
63
+ const result = EciesEncryptionTypeStringMap[resultType];
64
+ if (result === undefined) {
65
+ throw new ECIESError(
66
+ ECIESErrorTypeEnum.InvalidEncryptionType,
67
+ getEciesI18nEngine() as any,
68
+ );
69
+ }
70
+ return result;
71
+ }
72
+
73
+ export function encryptionTypeEnumToType(
74
+ type: EciesEncryptionTypeEnum,
75
+ ): EciesEncryptionType {
76
+ const result = EciesEncryptionTypeEnumTypeMap[type];
77
+ if (result === undefined) {
78
+ throw new ECIESError(
79
+ ECIESErrorTypeEnum.InvalidEncryptionType,
80
+ getEciesI18nEngine() as any,
81
+ );
82
+ }
83
+ return result;
84
+ }
85
+
86
+ export function validateEciesEncryptionTypeEnum(
87
+ type: EciesEncryptionTypeEnum,
88
+ ): boolean {
89
+ return Object.values(EciesEncryptionTypeEnum).includes(type);
90
+ }
91
+
92
+ export function ensureEciesEncryptionTypeEnum(
93
+ type: EciesEncryptionTypeEnum,
94
+ ): EciesEncryptionTypeEnum {
95
+ if (!validateEciesEncryptionTypeEnum(type)) {
96
+ throw new ECIESError(
97
+ ECIESErrorTypeEnum.InvalidEncryptionType,
98
+ getEciesI18nEngine() as any,
99
+ );
100
+ }
101
+ return type;
102
+ }
@@ -0,0 +1,31 @@
1
+ export enum ECIESErrorTypeEnum {
2
+ InvalidECIESMultipleEncryptedKeySize = 'InvalidECIESMultipleEncryptedKeySize',
3
+ InvalidECIESPublicKeyLength = 'InvalidECIESPublicKeyLength',
4
+ InvalidECIESMultipleRecipientCountSize = 'InvalidECIESMultipleRecipientCountSize',
5
+ InvalidECIESMultipleDataLengthSize = 'InvalidECIESMultipleDataLengthSize',
6
+ InvalidECIESMultipleRecipientIdSize = 'InvalidECIESMultipleRecipientIdSize',
7
+ CRCError = 'CRCError',
8
+ InvalidEncryptionType = 'InvalidEncryptionType',
9
+ InvalidIVLength = 'InvalidIVLength',
10
+ InvalidAuthTagLength = 'InvalidAuthTagLength',
11
+ InvalidHeaderLength = 'InvalidHeaderLength',
12
+ InvalidDataLength = 'InvalidDataLength',
13
+ InvalidEncryptedDataLength = 'InvalidEncryptedDataLength',
14
+ InvalidMessageCrc = 'InvalidMessageCrc',
15
+ InvalidMnemonic = 'InvalidMnemonic',
16
+ InvalidOperation = 'InvalidOperation',
17
+ MessageLengthMismatch = 'MessageLengthMismatch',
18
+ InvalidEncryptedKeyLength = 'InvalidEncryptedKeyLength',
19
+ InvalidEphemeralPublicKey = 'InvalidEphemeralPublicKey',
20
+ RecipientNotFound = 'RecipientNotFound',
21
+ InvalidSignature = 'InvalidSignature',
22
+ InvalidSenderPublicKey = 'InvalidSenderPublicKey',
23
+ TooManyRecipients = 'TooManyRecipients',
24
+ PrivateKeyNotLoaded = 'PrivateKeyNotLoaded',
25
+ RecipientKeyCountMismatch = 'RecipientKeyCountMismatch',
26
+ InvalidRecipientCount = 'InvalidRecipientCount',
27
+ FileSizeTooLarge = 'FileSizeTooLarge',
28
+ DecryptionFailed = 'DecryptionFailed', // Added for MAC/Padding errors
29
+ InvalidRecipientPublicKey = 'InvalidRecipientPublicKey', // Added for specific key errors
30
+ SecretComputationFailed = 'SecretComputationFailed', // Added for ECDH failures
31
+ }
@@ -0,0 +1,108 @@
1
+
2
+ export enum EciesStringKey {
3
+ Error_ECIESError_InvalidECIESMultipleEncryptedKeySize = 'Error_ECIESError_InvalidECIESMultipleEncryptedKeySize',
4
+ Error_ECIESError_InvalidECIESPublicKeyLength = 'Error_ECIESError_InvalidECIESPublicKeyLength',
5
+ Error_ECIESError_InvalidECIESMultipleRecipientCountSize = 'Error_ECIESError_InvalidECIESMultipleRecipientCountSize',
6
+ Error_ECIESError_InvalidECIESMultipleDataLengthSize = 'Error_ECIESError_InvalidECIESMultipleDataLengthSize',
7
+ Error_ECIESError_InvalidECIESMultipleRecipientIdSize = 'Error_ECIESError_InvalidECIESMultipleRecipientIdSize',
8
+ Error_ECIESError_CRCError = 'Error_ECIESError_CRCError',
9
+ Error_ECIESError_InvalidEncryptionType = 'Error_ECIESError_InvalidEncryptionType',
10
+ Error_ECIESError_InvalidEncryptionTypeTemplate = 'Error_ECIESError_InvalidEncryptionTypeTemplate',
11
+ Error_ECIESError_InvalidIVLength = 'Error_ECIESError_InvalidIVLength',
12
+ Error_ECIESError_InvalidAuthTagLength = 'Error_ECIESError_InvalidAuthTagLength',
13
+ Error_ECIESError_InvalidHeaderLength = 'Error_ECIESError_InvalidHeaderLength',
14
+ Error_ECIESError_InvalidDataLength = 'Error_ECIESError_InvalidDataLength',
15
+ Error_ECIESError_InvalidEncryptedDataLength = 'Error_ECIESError_InvalidEncryptedDataLength',
16
+ Error_ECIESError_InvalidMessageCrc = 'Error_ECIESError_InvalidMessageCrc',
17
+ Error_ECIESError_InvalidMnemonic = 'Error_ECIESError_InvalidMnemonic',
18
+ Error_ECIESError_InvalidOperation = 'Error_ECIESError_InvalidOperation',
19
+ Error_ECIESError_MessageLengthMismatch = 'Error_ECIESError_MessageLengthMismatch',
20
+ Error_ECIESError_InvalidEncryptedKeyLength = 'Error_ECIESError_InvalidEncryptedKeyLength',
21
+ Error_ECIESError_InvalidEphemeralPublicKey = 'Error_ECIESError_InvalidEphemeralPublicKey',
22
+ Error_ECIESError_RecipientNotFound = 'Error_ECIESError_RecipientNotFound',
23
+ Error_ECIESError_InvalidSignature = 'Error_ECIESError_InvalidSignature',
24
+ Error_ECIESError_InvalidSenderPublicKey = 'Error_ECIESError_InvalidSenderPublicKey',
25
+ Error_ECIESError_TooManyRecipients = 'Error_ECIESError_TooManyRecipients',
26
+ Error_ECIESError_PrivateKeyNotLoaded = 'Error_ECIESError_PrivateKeyNotLoaded',
27
+ Error_ECIESError_RecipientKeyCountMismatch = 'Error_ECIESError_RecipientKeyCountMismatch',
28
+ Error_ECIESError_InvalidRecipientCount = 'Error_ECIESError_InvalidRecipientCount',
29
+ Error_ECIESError_FileSizeTooLarge = 'Error_ECIESError_FileSizeTooLarge',
30
+ Error_ECIESError_DecryptionFailed = 'Error_ECIESError_DecryptionFailed',
31
+ Error_ECIESError_InvalidRecipientPublicKey = 'Error_ECIESError_InvalidRecipientPublicKey',
32
+ Error_ECIESError_SecretComputationFailed = 'Error_ECIESError_SecretComputationFailed',
33
+ Error_ECIESError_AuthenticationTagIsRequiredForKeyEncryption = 'Error_ECIESError_AuthenticationTagIsRequiredForKeyEncryption',
34
+ Error_ECIESError_AuthenticationTagIsRequiredForECIESEncryption = 'Error_ECIESError_AuthenticationTagIsRequiredForECIESEncryption',
35
+ Error_ECIESError_AuthenticationTagIsRequiredForMultiRecipientECIESEncryption = 'Error_ECIESError_AuthenticationTagIsRequiredForMultiRecipientECIESEncryption',
36
+ Error_ECIESError_InvalidEncryptedKeyLengthTemplate = 'Error_ECIESError_InvalidEncryptedKeyLengthTemplate',
37
+ Error_ECIESError_FailedToDecryptKey = 'Error_ECIESError_FailedToDecryptKey',
38
+ Error_ECIESError_TooManyRecipientsTemplate = 'Error_ECIESError_TooManyRecipientsTemplate',
39
+ Error_ECIESError_MessageTooLargeTemplate = 'Error_ECIESError_MessageTooLargeTemplate',
40
+ Error_ECIESError_DecryptedDataLengthMismatch = 'Error_ECIESError_DecryptedDataLengthMismatch',
41
+ Error_ECIESError_RecipientCountMismatch = 'Error_ECIESError_RecipientCountMismatch',
42
+ Error_ECIESError_DataTooShortForMultiRecipientHeader = 'Error_ECIESError_DataTooShortForMultiRecipientHeader',
43
+ Error_ECIESError_FailedToDecryptChallengeTemplate = 'Error_ECIESError_FailedToDecryptChallengeTemplate',
44
+ Error_ECIESError_InvalidChallengeSignature = 'Error_ECIESError_InvalidChallengeSignature',
45
+ Error_ECIESError_FailedToDervivePrivateKey = 'Error_ECIESError_FailedToDervivePrivateKey',
46
+ Error_ECIESError_InvalidPublicKeyFormatOrLengthTemplate = 'Error_ECIESError_InvalidPublicKeyFormatOrLengthTemplate',
47
+ Error_ECIESError_ReceivedNullOrUndefinedPublicKey = 'Error_ECIESError_ReceivedNullOrUndefinedPublicKey',
48
+ Error_ECIESError_MessageLengthExceedsMaximumAllowedSizeTemplate = 'Error_ECIESError_MessageLengthExceedsMaximumAllowedSizeTemplate',
49
+ Error_ECIESError_MultipleEncryptionTypeNotSupportedInSingleRecipientMode = 'Error_ECIESError_MultipleEncryptionTypeNotSupportedInSingleRecipientMode',
50
+ Error_ECIESError_EncryptionTypeMismatchTemplate = 'Error_ECIESError_EncryptionTypeMismatchTemplate',
51
+ Error_ECIESError_DataTooShortTemplate = 'Error_ECIESError_DataTooShortTemplate',
52
+ Error_ECIESError_DataLengthMismatchTemplate = 'Error_ECIESError_DataLengthMismatchTemplate',
53
+ Error_ECIESError_CombinedDataTooShortForComponents = 'Error_ECIESError_CombinedDataTooShortForComponents',
54
+ Error_ECIESError_InvalidChecksumConstants = 'Error_ECIESError_InvalidChecksumConstants',
55
+ Error_ECIESError_CannotOverwriteDefaultConfiguration = 'Error_ECIESError_CannotOverwriteDefaultConfiguration',
56
+
57
+ // Member Error Types - buildReasonMap(MemberErrorType, 'Error', 'MemberError')
58
+ Error_MemberError_MissingMemberName = 'Error_MemberError_MissingMemberName',
59
+ Error_MemberError_InvalidMemberNameWhitespace = 'Error_MemberError_InvalidMemberNameWhitespace',
60
+ Error_MemberError_InvalidEmail = 'Error_MemberError_InvalidEmail',
61
+ Error_MemberError_InvalidMemberName = 'Error_MemberError_InvalidMemberName',
62
+ Error_MemberError_MissingEmail = 'Error_MemberError_MissingEmail',
63
+ Error_MemberError_InvalidEmailWhitespace = 'Error_MemberError_InvalidEmailWhitespace',
64
+ Error_MemberError_MissingPrivateKey = 'Error_MemberError_MissingPrivateKey',
65
+ Error_MemberError_NoWallet = 'Error_MemberError_NoWallet',
66
+ Error_MemberError_WalletAlreadyLoaded = 'Error_MemberError_WalletAlreadyLoaded',
67
+ Error_MemberError_InvalidMnemonic = 'Error_MemberError_InvalidMnemonic',
68
+ Error_MemberError_IncorrectOrInvalidPrivateKey = 'Error_MemberError_IncorrectOrInvalidPrivateKey',
69
+ Error_MemberError_MemberNotFound = 'Error_MemberError_MemberNotFound',
70
+ Error_MemberError_MemberAlreadyExists = 'Error_MemberError_MemberAlreadyExists',
71
+ Error_MemberError_InvalidMemberStatus = 'Error_MemberError_InvalidMemberStatus',
72
+ Error_MemberError_FailedToHydrateMember = 'Error_MemberError_FailedToHydrateMember',
73
+ Error_MemberError_InvalidMemberData = 'Error_MemberError_InvalidMemberData',
74
+ Error_MemberError_FailedToConvertMemberData = 'Error_MemberError_FailedToConvertMemberData',
75
+ Error_MemberError_MissingEncryptionData = 'Error_MemberError_MissingEncryptionData',
76
+ Error_MemberError_EncryptionDataTooLarge = 'Error_MemberError_EncryptionDataTooLarge',
77
+ Error_MemberError_InvalidEncryptionData = 'Error_MemberError_InvalidEncryptionData',
78
+
79
+ // GUID Error Types - buildReasonMap(GuidErrorType, 'Error', 'GuidError')
80
+ Error_GuidError_Invalid = 'Error_GuidError_Invalid',
81
+ Error_GuidError_InvalidWithGuidTemplate = 'Error_GuidError_InvalidWithGuidTemplate',
82
+ Error_GuidError_UnknownBrandTemplate = 'Error_GuidError_UnknownBrandTemplate',
83
+ Error_GuidError_UnknownLengthTemplate = 'Error_GuidError_UnknownLengthTemplate',
84
+
85
+ // Length Error Types - buildReasonMap(LengthErrorType, 'Error', 'LengthError')
86
+ Error_LengthError_LengthIsTooShort = 'Error_LengthError_LengthIsTooShort',
87
+ Error_LengthError_LengthIsTooLong = 'Error_LengthError_LengthIsTooLong',
88
+ Error_LengthError_LengthIsInvalidType = 'Error_LengthError_LengthIsInvalidType',
89
+
90
+ // PBKDF2 Error Types - buildReasonMap(Pbkdf2ErrorType, 'Error', 'Pbkdf2Error')
91
+ Error_Pbkdf2Error_InvalidProfile = 'Error_Pbkdf2Error_InvalidProfile',
92
+ Error_Pbkdf2Error_InvalidSaltLength = 'Error_Pbkdf2Error_InvalidSaltLength',
93
+ Error_Pbkdf2Error_InvalidHashLength = 'Error_Pbkdf2Error_InvalidHashLength',
94
+
95
+ // Secure Storage Error Types - buildReasonMap(SecureStorageErrorType, 'Error', 'SecureStorageError')
96
+ Error_SecureStorageError_DecryptedValueLengthMismatch = 'Error_SecureStorageError_DecryptedValueLengthMismatch',
97
+ Error_SecureStorageError_DecryptedValueChecksumMismatch = 'Error_SecureStorageError_DecryptedValueChecksumMismatch',
98
+ Error_SecureStorageError_ValueIsNull = 'Error_SecureStorageError_ValueIsNull',
99
+
100
+ Error_InvalidEmailError_Invalid = 'Error_InvalidEmailError_Invalid',
101
+ Error_InvalidEmailError_Missing = 'Error_InvalidEmailError_Missing',
102
+ Error_InvalidEmailError_Whitespace = 'Error_InvalidEmailError_Whitespace',
103
+ Error_Utils_EncryptionFailedNoAuthTag = 'Error_Utils_EncryptionFailedNoAuthTag',
104
+ Error_PasswordLoginError_FailedToStoreLoginData = 'Error_PasswordLoginError_FailedToStoreLoginData',
105
+ Error_PasswordLoginError_PasswordLoginNotSetUp = 'Error_PasswordLoginError_PasswordLoginNotSetUp',
106
+
107
+ Error_PhoneNumber_InvalidTemplate = 'Error_PhoneNumber_InvalidTemplate',
108
+ }
@@ -0,0 +1,26 @@
1
+ export enum GuidBrandType {
2
+ Unknown = 'Unknown',
3
+ /**
4
+ * Full hex guid, 36 characters
5
+ * 00000000-0000-0000-0000-000000000000
6
+ */
7
+ FullHexGuid = 'FullHexGuid',
8
+ /**
9
+ * Short hex guid, 32 characters
10
+ * 0000000000000000000000000000000
11
+ */
12
+ ShortHexGuid = 'ShortHexGuid',
13
+ /**
14
+ * Base64 guid, 24 characters
15
+ * AAAA/AAAAAA==
16
+ */
17
+ Base64Guid = 'Base64Guid',
18
+ /**
19
+ * BigInt, variable width
20
+ */
21
+ BigIntGuid = 'BigIntGuid',
22
+ /**
23
+ * Raw Guid, in a Uint8Array, 16 bytes
24
+ */
25
+ RawGuidUint8Array = 'RawGuidUint8Array',
26
+ }
@@ -0,0 +1,6 @@
1
+ export enum GuidErrorType {
2
+ Invalid = 'Invalid',
3
+ InvalidWithGuid = 'InvalidWithGuid',
4
+ UnknownBrand = 'UnknownBrand',
5
+ UnknownLength = 'UnknownLength',
6
+ }
@@ -12,4 +12,3 @@ export * from './password-login-error-type';
12
12
  export * from './pbkdf2-error-type';
13
13
  export * from './pbkdf2-profile';
14
14
  export * from './secure-storage-error-type';
15
- //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,5 @@
1
+ export enum InvalidEmailErrorType {
2
+ Invalid = 'Invalid',
3
+ Missing = 'Missing',
4
+ Whitespace = 'Whitespace',
5
+ }
@@ -0,0 +1,6 @@
1
+ export enum LengthEncodingType {
2
+ UInt8 = 0,
3
+ UInt16 = 1,
4
+ UInt32 = 2,
5
+ UInt64 = 3,
6
+ }
@@ -0,0 +1,5 @@
1
+ export enum LengthErrorType {
2
+ LengthIsTooShort = 'LengthIsTooShort',
3
+ LengthIsTooLong = 'LengthIsTooLong',
4
+ LengthIsInvalidType = 'LengthIsInvalidType',
5
+ }
@@ -0,0 +1,106 @@
1
+ /**
2
+ * Error types specific to member operations
3
+ */
4
+ export enum MemberErrorType {
5
+ /**
6
+ * Member name is missing
7
+ */
8
+ MissingMemberName = 'MissingMemberName',
9
+
10
+ /**
11
+ * Member name contains invalid whitespace
12
+ */
13
+ InvalidMemberNameWhitespace = 'InvalidMemberNameWhitespace',
14
+
15
+ /**
16
+ * Invalid email for member
17
+ */
18
+ InvalidEmail = 'InvalidEmail',
19
+
20
+ /**
21
+ * Invalid name for member
22
+ */
23
+ InvalidMemberName = 'InvalidMemberName',
24
+
25
+ /**
26
+ * Member email is missing
27
+ */
28
+ MissingEmail = 'MissingEmail',
29
+
30
+ /**
31
+ * Member email contains invalid whitespace
32
+ */
33
+ InvalidEmailWhitespace = 'InvalidEmailWhitespace',
34
+
35
+ /**
36
+ * Member private key is missing
37
+ */
38
+ MissingPrivateKey = 'MissingPrivateKey',
39
+
40
+ /**
41
+ * Member wallet is not loaded
42
+ */
43
+ NoWallet = 'NoWallet',
44
+
45
+ /**
46
+ * Member wallet is already loaded
47
+ */
48
+ WalletAlreadyLoaded = 'WalletAlreadyLoaded',
49
+
50
+ /**
51
+ * Invalid mnemonic for member
52
+ */
53
+ InvalidMnemonic = 'InvalidMnemonic',
54
+
55
+ /**
56
+ * Incorrect or invalid private key
57
+ */
58
+ IncorrectOrInvalidPrivateKey = 'IncorrectOrInvalidPrivateKey',
59
+
60
+ /**
61
+ * Member not found
62
+ */
63
+ MemberNotFound = 'MemberNotFound',
64
+
65
+ /**
66
+ * Member already exists
67
+ */
68
+ MemberAlreadyExists = 'MemberAlreadyExists',
69
+
70
+ /**
71
+ * Invalid member status
72
+ */
73
+ InvalidMemberStatus = 'InvalidMemberStatus',
74
+
75
+ /**
76
+ * Failed to hydrate member
77
+ */
78
+ FailedToHydrateMember = 'FailedToHydrateMember',
79
+
80
+ /**
81
+ * Invalid member data
82
+ */
83
+ InvalidMemberData = 'InvalidMemberData',
84
+
85
+ /**
86
+ * Failed to convert member data
87
+ */
88
+ FailedToConvertMemberData = 'FailedToConvertMemberData',
89
+
90
+ /**
91
+ * Data to encrypt is missing or null
92
+ */
93
+ MissingEncryptionData = 'MissingEncryptionData',
94
+
95
+ /**
96
+ * Data to encrypt exceeds maximum size limit
97
+ */
98
+ EncryptionDataTooLarge = 'EncryptionDataTooLarge',
99
+
100
+ /**
101
+ * Data to encrypt contains invalid characters
102
+ */
103
+ InvalidEncryptionData = 'InvalidEncryptionData',
104
+ }
105
+
106
+ export default MemberErrorType;
@@ -5,17 +5,18 @@
5
5
  * 3. User - Regular users
6
6
  * 4. Anonymous - Users who aren't logged in and un-owned data
7
7
  */
8
- export declare enum MemberType {
9
- Admin = "Admin",
10
- System = "System",
11
- User = "User",
12
- Anonymous = "Anonymous"
8
+ export enum MemberType {
9
+ Admin = 'Admin',
10
+ System = 'System',
11
+ User = 'User',
12
+ Anonymous = 'Anonymous',
13
13
  }
14
+
14
15
  /**
15
16
  * String union type for MemberType values.
16
17
  * Use this type when you need to extend with custom member types:
17
18
  * type CustomMemberType = MemberTypeValue | 'CustomType';
18
19
  */
19
20
  export type MemberTypeValue = `${MemberType}`;
21
+
20
22
  export default MemberType;
21
- //# sourceMappingURL=member-type.d.ts.map
@@ -0,0 +1,4 @@
1
+ export enum PasswordLoginErrorTypeEnum {
2
+ FailedToStoreLoginData = 'FailedToStoreLoginData',
3
+ PasswordLoginNotSetUp = 'PasswordLoginNotSetUp',
4
+ }
@@ -0,0 +1,5 @@
1
+ export enum Pbkdf2ErrorType {
2
+ InvalidProfile = 'InvalidProfile',
3
+ InvalidSaltLength = 'InvalidSaltLength',
4
+ InvalidHashLength = 'InvalidHashLength',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum Pbkdf2ProfileEnum {
2
+ BROWSER_PASSWORD = 'BROWSER_PASSWORD',
3
+ HIGH_SECURITY = 'HIGH_SECURITY',
4
+ TEST_FAST = 'TEST_FAST',
5
+ }
@@ -0,0 +1,5 @@
1
+ export enum SecureStorageErrorType {
2
+ DecryptedValueLengthMismatch = 'DecryptedValueLengthMismatch',
3
+ DecryptedValueChecksumMismatch = 'DecryptedValueChecksumMismatch',
4
+ ValueIsNull = 'ValueIsNull',
5
+ }
@@ -0,0 +1,15 @@
1
+ import { CoreStringKey, I18nEngine, Language } from '@digitaldefiance/i18n-lib';
2
+
3
+ export class DisposedError extends Error {
4
+ constructor() {
5
+ let message = 'Object has been disposed';
6
+ try {
7
+ const engine = I18nEngine.getInstance();
8
+ message = engine.translate(CoreStringKey.Common_Disposed);
9
+ } catch {
10
+ // I18n engine not initialized, use fallback message
11
+ }
12
+ super(message);
13
+ this.name = 'DisposedError';
14
+ }
15
+ }
@@ -0,0 +1,34 @@
1
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
2
+ import { ECIESErrorTypeEnum } from '../enumerations/ecies-error-type';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId, getEciesI18nEngine } from '../i18n-setup';
5
+
6
+ export class ECIESError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<
7
+ typeof ECIESErrorTypeEnum,
8
+ EciesStringKey,
9
+ TLanguage
10
+ > {
11
+ constructor(
12
+ type: ECIESErrorTypeEnum,
13
+ engine?: PluginI18nEngine<TLanguage>,
14
+ options?: HandleableErrorOptions,
15
+ language?: TLanguage,
16
+ otherVars?: Record<string, string | number>,
17
+ ) {
18
+ const pluginEngine = (engine || getEciesI18nEngine()) as PluginI18nEngine<TLanguage>;
19
+ super(
20
+ pluginEngine,
21
+ EciesComponentId,
22
+ type,
23
+ buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(
24
+ ECIESErrorTypeEnum,
25
+ ['Error', 'ECIESError'],
26
+ ),
27
+ new Error(),
28
+ options,
29
+ language,
30
+ otherVars,
31
+ );
32
+ this.name = 'ECIESError';
33
+ }
34
+ }
@@ -0,0 +1,34 @@
1
+ import { GuidBrandType } from '../enumerations/guid-brand-type';
2
+ import { GuidErrorType } from '../enumerations/guid-error-type';
3
+ import { RawGuidUint8Array } from '../types';
4
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
5
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
6
+ import { EciesComponentId } from '../i18n-setup';
7
+
8
+ /**
9
+ * Error class for handling GUID-related errors.
10
+ */
11
+ export class GuidError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof GuidErrorType, EciesStringKey, TLanguage> {
12
+ public readonly brand?: GuidBrandType;
13
+ public readonly length?: number;
14
+ public readonly guid?: Uint8Array;
15
+
16
+ constructor(
17
+ type: GuidErrorType,
18
+ engine: PluginI18nEngine<TLanguage>,
19
+ brand?: GuidBrandType,
20
+ length?: number,
21
+ guid?: RawGuidUint8Array | Uint8Array,
22
+ options?: HandleableErrorOptions,
23
+ language?: TLanguage,
24
+ ) {
25
+ super(engine, EciesComponentId, type, buildReasonMap<typeof GuidErrorType, EciesStringKey>(GuidErrorType, ['Error', 'GuidError'], new Set([GuidErrorType.InvalidWithGuid, GuidErrorType.UnknownBrand, GuidErrorType.UnknownLength])), new Error(), options, language, {
26
+ GUID: guid ? Array.from(guid).map(b => b.toString(16).padStart(2, '0')).join(' ') : '',
27
+ BRAND: String(brand) ?? '',
28
+ LENGTH: String(length) ?? '',
29
+ });
30
+ this.brand = brand;
31
+ this.length = length;
32
+ this.guid = guid;
33
+ }
34
+ }
@@ -6,4 +6,3 @@ export * from './length';
6
6
  export * from './member';
7
7
  export * from './pbkdf2';
8
8
  export * from './secure-storage';
9
- //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { InvalidEmailErrorType } from '../enumerations/invalid-email-type';
2
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId } from '../i18n-setup';
5
+
6
+ export class InvalidEmailError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof InvalidEmailErrorType, EciesStringKey, TLanguage> {
7
+ constructor(type: InvalidEmailErrorType, engine: PluginI18nEngine<TLanguage>, options?: HandleableErrorOptions, language?: TLanguage) {
8
+ super(engine, EciesComponentId, type, buildReasonMap<typeof InvalidEmailErrorType, EciesStringKey>(InvalidEmailErrorType, ['Error', 'InvalidEmailError']), new Error(), options, language);
9
+ this.name = 'InvalidEmailError';
10
+ }
11
+ }
@@ -0,0 +1,11 @@
1
+ import { LengthErrorType } from '../enumerations/length-error-type';
2
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId } from '../i18n-setup';
5
+
6
+ export class LengthError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof LengthErrorType, EciesStringKey, TLanguage> {
7
+ constructor(type: LengthErrorType, engine: PluginI18nEngine<TLanguage>, options?: HandleableErrorOptions, language?: TLanguage) {
8
+ super(engine, EciesComponentId, type, buildReasonMap<typeof LengthErrorType, EciesStringKey>(LengthErrorType, ['Error', 'LengthError']), new Error(), options, language);
9
+ this.name = 'LengthError';
10
+ }
11
+ }
@@ -0,0 +1,12 @@
1
+ import { MemberErrorType } from '../enumerations/member-error-type';
2
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId } from '../i18n-setup';
5
+
6
+ export class MemberError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof MemberErrorType, EciesStringKey, TLanguage> {
7
+
8
+ constructor(type: MemberErrorType, engine: PluginI18nEngine<TLanguage>, options?: HandleableErrorOptions, language?: TLanguage) {
9
+ super(engine, EciesComponentId, type, buildReasonMap<typeof MemberErrorType, EciesStringKey>(MemberErrorType, ['Error', 'MemberError']), new Error(), options, language);
10
+ this.name = 'MemberError';
11
+ }
12
+ }
@@ -0,0 +1,12 @@
1
+ import { Pbkdf2ErrorType } from '../enumerations/pbkdf2-error-type';
2
+ import { buildReasonMap, HandleableErrorOptions, PluginTypedHandleableError, PluginI18nEngine, CoreLanguageCode } from '@digitaldefiance/i18n-lib';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId } from '../i18n-setup';
5
+
6
+ export class Pbkdf2Error<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof Pbkdf2ErrorType, EciesStringKey, TLanguage> {
7
+
8
+ constructor(type: Pbkdf2ErrorType, engine: PluginI18nEngine<TLanguage>, options?: HandleableErrorOptions, language?: TLanguage) {
9
+ super(engine, EciesComponentId, type, buildReasonMap<typeof Pbkdf2ErrorType, EciesStringKey>(Pbkdf2ErrorType, ['Error', 'Pbkdf2Error']), new Error(), options, language);
10
+ this.name = 'Pbkdf2Error';
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ import { SecureStorageErrorType } from '../enumerations/secure-storage-error-type';
2
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
3
+ import { EciesStringKey } from '../enumerations/ecies-string-key';
4
+ import { EciesComponentId } from '../i18n-setup';
5
+
6
+ export class SecureStorageError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof SecureStorageErrorType, EciesStringKey, TLanguage> {
7
+ constructor(type: SecureStorageErrorType, engine: PluginI18nEngine<TLanguage>, options?: HandleableErrorOptions, language?: TLanguage) {
8
+ const reasonMap = buildReasonMap<typeof SecureStorageErrorType, EciesStringKey>(SecureStorageErrorType, ['Error', 'SecureStorageError']);
9
+
10
+ super(engine, EciesComponentId, type, reasonMap, new Error(), options, language);
11
+ this.name = 'SecureStorageError';
12
+ }
13
+ }
@@ -0,0 +1,18 @@
1
+ import { buildReasonMap, HandleableErrorOptions, CoreLanguageCode, PluginI18nEngine, PluginTypedHandleableError } from '@digitaldefiance/i18n-lib';
2
+ import { ECIESErrorTypeEnum, EciesStringKey } from '../enumerations';
3
+ import { EciesComponentId } from '../i18n-setup';
4
+
5
+ export class SimpleECIESError<TLanguage extends CoreLanguageCode = CoreLanguageCode> extends PluginTypedHandleableError<typeof ECIESErrorTypeEnum, EciesStringKey, TLanguage> {
6
+ constructor(
7
+ type: ECIESErrorTypeEnum,
8
+ engine: PluginI18nEngine<TLanguage>,
9
+ options?: HandleableErrorOptions,
10
+ language?: TLanguage,
11
+ otherVars?: Record<string, string | number>
12
+ ) {
13
+ const reasonMap = buildReasonMap<typeof ECIESErrorTypeEnum, EciesStringKey>(ECIESErrorTypeEnum, ['Error', 'ECIESError']);
14
+
15
+ super(engine, EciesComponentId, type, reasonMap, new Error(), options, language, otherVars);
16
+ this.name = 'SimpleECIESError';
17
+ }
18
+ }
@@ -0,0 +1,6 @@
1
+ export class SimpleTestError extends Error {
2
+ constructor(message: string) {
3
+ super(message);
4
+ this.name = 'SimpleTestError';
5
+ }
6
+ }