@digitaldefiance/node-ecies-lib 4.12.7 → 4.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (374) hide show
  1. package/README.md +67 -18
  2. package/package.json +5 -4
  3. package/src/builders/ecies-builder.d.ts +12 -0
  4. package/src/builders/ecies-builder.d.ts.map +1 -1
  5. package/src/builders/ecies-builder.js.map +1 -1
  6. package/src/builders/index.d.ts +3 -0
  7. package/src/builders/index.d.ts.map +1 -1
  8. package/src/builders/index.js +3 -0
  9. package/src/builders/index.js.map +1 -1
  10. package/src/builders/member-builder.d.ts +16 -0
  11. package/src/builders/member-builder.d.ts.map +1 -1
  12. package/src/builders/member-builder.js +16 -0
  13. package/src/builders/member-builder.js.map +1 -1
  14. package/src/constants.d.ts +23 -10
  15. package/src/constants.d.ts.map +1 -1
  16. package/src/constants.js +57 -84
  17. package/src/constants.js.map +1 -1
  18. package/src/core/errors/crypto-error.d.ts +4 -0
  19. package/src/core/errors/crypto-error.d.ts.map +1 -1
  20. package/src/core/errors/crypto-error.js +4 -0
  21. package/src/core/errors/crypto-error.js.map +1 -1
  22. package/src/core/index.d.ts +3 -0
  23. package/src/core/index.d.ts.map +1 -1
  24. package/src/core/index.js +3 -0
  25. package/src/core/index.js.map +1 -1
  26. package/src/core/types/result.d.ts +4 -0
  27. package/src/core/types/result.d.ts.map +1 -1
  28. package/src/enumerations/index.d.ts +3 -0
  29. package/src/enumerations/index.d.ts.map +1 -1
  30. package/src/enumerations/index.js +3 -0
  31. package/src/enumerations/index.js.map +1 -1
  32. package/src/enumerations/pbkdf2-profile.d.ts +4 -0
  33. package/src/enumerations/pbkdf2-profile.d.ts.map +1 -1
  34. package/src/enumerations/pbkdf2-profile.js +4 -0
  35. package/src/enumerations/pbkdf2-profile.js.map +1 -1
  36. package/src/errors/index.d.ts +3 -0
  37. package/src/errors/index.d.ts.map +1 -1
  38. package/src/errors/index.js +3 -0
  39. package/src/errors/index.js.map +1 -1
  40. package/src/errors/translatable.d.ts +9 -0
  41. package/src/errors/translatable.d.ts.map +1 -0
  42. package/src/errors/translatable.js +20 -0
  43. package/src/errors/translatable.js.map +1 -0
  44. package/src/errors/voting.d.ts +5 -0
  45. package/src/errors/voting.d.ts.map +1 -1
  46. package/src/errors/voting.js +5 -0
  47. package/src/errors/voting.js.map +1 -1
  48. package/src/examples/typed-configuration-usage.js +3 -3
  49. package/src/examples/typed-configuration-usage.js.map +1 -1
  50. package/src/i18n/ecies-i18n-factory.d.ts +1 -1
  51. package/src/i18n/ecies-i18n-factory.d.ts.map +1 -1
  52. package/src/i18n/ecies-i18n-factory.js +7 -2
  53. package/src/i18n/ecies-i18n-factory.js.map +1 -1
  54. package/src/i18n/index.d.ts +3 -0
  55. package/src/i18n/index.d.ts.map +1 -1
  56. package/src/i18n/index.js +3 -0
  57. package/src/i18n/index.js.map +1 -1
  58. package/src/i18n/node-ecies-i18n-setup.d.ts +5 -0
  59. package/src/i18n/node-ecies-i18n-setup.d.ts.map +1 -1
  60. package/src/i18n/node-ecies-i18n-setup.js +12 -0
  61. package/src/i18n/node-ecies-i18n-setup.js.map +1 -1
  62. package/src/i18n/translations/de.d.ts +4 -0
  63. package/src/i18n/translations/de.d.ts.map +1 -1
  64. package/src/i18n/translations/de.js +4 -0
  65. package/src/i18n/translations/de.js.map +1 -1
  66. package/src/i18n/translations/en-GB.d.ts +4 -0
  67. package/src/i18n/translations/en-GB.d.ts.map +1 -1
  68. package/src/i18n/translations/en-GB.js +4 -0
  69. package/src/i18n/translations/en-GB.js.map +1 -1
  70. package/src/i18n/translations/en-US.d.ts +5 -0
  71. package/src/i18n/translations/en-US.d.ts.map +1 -1
  72. package/src/i18n/translations/en-US.js +5 -0
  73. package/src/i18n/translations/en-US.js.map +1 -1
  74. package/src/i18n/translations/es.d.ts +4 -0
  75. package/src/i18n/translations/es.d.ts.map +1 -1
  76. package/src/i18n/translations/es.js +4 -0
  77. package/src/i18n/translations/es.js.map +1 -1
  78. package/src/i18n/translations/fr.d.ts +4 -0
  79. package/src/i18n/translations/fr.d.ts.map +1 -1
  80. package/src/i18n/translations/fr.js +4 -0
  81. package/src/i18n/translations/fr.js.map +1 -1
  82. package/src/i18n/translations/index.d.ts +3 -0
  83. package/src/i18n/translations/index.d.ts.map +1 -1
  84. package/src/i18n/translations/index.js +3 -0
  85. package/src/i18n/translations/index.js.map +1 -1
  86. package/src/i18n/translations/ja.d.ts +4 -0
  87. package/src/i18n/translations/ja.d.ts.map +1 -1
  88. package/src/i18n/translations/ja.js +4 -0
  89. package/src/i18n/translations/ja.js.map +1 -1
  90. package/src/i18n/translations/uk.d.ts +4 -0
  91. package/src/i18n/translations/uk.d.ts.map +1 -1
  92. package/src/i18n/translations/uk.js +4 -0
  93. package/src/i18n/translations/uk.js.map +1 -1
  94. package/src/i18n/translations/zh-cn.d.ts +4 -0
  95. package/src/i18n/translations/zh-cn.d.ts.map +1 -1
  96. package/src/i18n/translations/zh-cn.js +4 -0
  97. package/src/i18n/translations/zh-cn.js.map +1 -1
  98. package/src/index.d.ts +12 -0
  99. package/src/index.d.ts.map +1 -1
  100. package/src/index.js +12 -0
  101. package/src/index.js.map +1 -1
  102. package/src/interfaces/authenticated-cipher.d.ts +5 -0
  103. package/src/interfaces/authenticated-cipher.d.ts.map +1 -1
  104. package/src/interfaces/authenticated-decipher.d.ts +3 -0
  105. package/src/interfaces/authenticated-decipher.d.ts.map +1 -1
  106. package/src/interfaces/checksum-config.d.ts +3 -0
  107. package/src/interfaces/checksum-config.d.ts.map +1 -1
  108. package/src/interfaces/checksum-consts.d.ts +3 -0
  109. package/src/interfaces/checksum-consts.d.ts.map +1 -1
  110. package/src/interfaces/configuration-provenance.d.ts +3 -0
  111. package/src/interfaces/configuration-provenance.d.ts.map +1 -1
  112. package/src/interfaces/constants.d.ts +5 -1
  113. package/src/interfaces/constants.d.ts.map +1 -1
  114. package/src/interfaces/ecies-consts.d.ts +5 -2
  115. package/src/interfaces/ecies-consts.d.ts.map +1 -1
  116. package/src/interfaces/encrypted-chunk.d.ts +3 -0
  117. package/src/interfaces/encrypted-chunk.d.ts.map +1 -1
  118. package/src/interfaces/encryption-consts.d.ts +3 -0
  119. package/src/interfaces/encryption-consts.d.ts.map +1 -1
  120. package/src/interfaces/guid.d.ts +3 -0
  121. package/src/interfaces/guid.d.ts.map +1 -1
  122. package/src/interfaces/index.d.ts +4 -0
  123. package/src/interfaces/index.d.ts.map +1 -1
  124. package/src/interfaces/index.js +4 -0
  125. package/src/interfaces/index.js.map +1 -1
  126. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.d.ts +3 -0
  127. package/src/interfaces/keypair-buffer-with-un-encrypted-private-key.d.ts.map +1 -1
  128. package/src/interfaces/keyring-consts.d.ts +3 -0
  129. package/src/interfaces/keyring-consts.d.ts.map +1 -1
  130. package/src/interfaces/member-with-mnemonic.d.ts +3 -0
  131. package/src/interfaces/member-with-mnemonic.d.ts.map +1 -1
  132. package/src/interfaces/member.d.ts +3 -0
  133. package/src/interfaces/member.d.ts.map +1 -1
  134. package/src/interfaces/multi-encrypted-message.d.ts +3 -0
  135. package/src/interfaces/multi-encrypted-message.d.ts.map +1 -1
  136. package/src/interfaces/multi-encrypted-parsed-header.d.ts +3 -0
  137. package/src/interfaces/multi-encrypted-parsed-header.d.ts.map +1 -1
  138. package/src/interfaces/multi-recipient-chunk.d.ts +3 -0
  139. package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -1
  140. package/src/interfaces/multi-recipient-chunk.js.map +1 -1
  141. package/src/interfaces/pbkdf-profiles.d.ts +3 -0
  142. package/src/interfaces/pbkdf-profiles.d.ts.map +1 -1
  143. package/src/interfaces/pbkdf2-result.d.ts +3 -0
  144. package/src/interfaces/pbkdf2-result.d.ts.map +1 -1
  145. package/src/interfaces/platform-buffer.d.ts +3 -0
  146. package/src/interfaces/platform-buffer.d.ts.map +1 -1
  147. package/src/interfaces/platform-id.d.ts +3 -0
  148. package/src/interfaces/platform-id.d.ts.map +1 -1
  149. package/src/interfaces/signing-key-private-key-info.d.ts +3 -0
  150. package/src/interfaces/signing-key-private-key-info.d.ts.map +1 -1
  151. package/src/interfaces/simple-keypair-buffer.d.ts +3 -0
  152. package/src/interfaces/simple-keypair-buffer.d.ts.map +1 -1
  153. package/src/interfaces/simple-keypair.d.ts +3 -0
  154. package/src/interfaces/simple-keypair.d.ts.map +1 -1
  155. package/src/interfaces/simple-public-key-only-buffer.d.ts +3 -0
  156. package/src/interfaces/simple-public-key-only-buffer.d.ts.map +1 -1
  157. package/src/interfaces/simple-public-key-only.d.ts +3 -0
  158. package/src/interfaces/simple-public-key-only.d.ts.map +1 -1
  159. package/src/interfaces/single-encrypted-parsed-header.d.ts +3 -0
  160. package/src/interfaces/single-encrypted-parsed-header.d.ts.map +1 -1
  161. package/src/interfaces/stream-config.d.ts +3 -0
  162. package/src/interfaces/stream-config.d.ts.map +1 -1
  163. package/src/interfaces/stream-config.js.map +1 -1
  164. package/src/interfaces/wallet-seed.d.ts +3 -0
  165. package/src/interfaces/wallet-seed.d.ts.map +1 -1
  166. package/src/interfaces/wrapped-key-consts.d.ts +3 -0
  167. package/src/interfaces/wrapped-key-consts.d.ts.map +1 -1
  168. package/src/isolated-private.d.ts.map +1 -1
  169. package/src/isolated-private.js +8 -0
  170. package/src/isolated-private.js.map +1 -1
  171. package/src/isolated-public.d.ts.map +1 -1
  172. package/src/isolated-public.js +8 -0
  173. package/src/isolated-public.js.map +1 -1
  174. package/src/lib/crypto-container.d.ts.map +1 -1
  175. package/src/lib/crypto-container.js +5 -0
  176. package/src/lib/crypto-container.js.map +1 -1
  177. package/src/lib/guid.d.ts +57 -33
  178. package/src/lib/guid.d.ts.map +1 -1
  179. package/src/lib/guid.js +131 -105
  180. package/src/lib/guid.js.map +1 -1
  181. package/src/lib/id-providers/buffer-provider.d.ts.map +1 -1
  182. package/src/lib/id-providers/buffer-provider.js +5 -0
  183. package/src/lib/id-providers/buffer-provider.js.map +1 -1
  184. package/src/lib/id-providers/guidv4-provider.d.ts +62 -0
  185. package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
  186. package/src/lib/id-providers/guidv4-provider.js +146 -0
  187. package/src/lib/id-providers/guidv4-provider.js.map +1 -0
  188. package/src/lib/index.d.ts +4 -0
  189. package/src/lib/index.d.ts.map +1 -1
  190. package/src/lib/index.js +4 -0
  191. package/src/lib/index.js.map +1 -1
  192. package/src/lib/invariant-validator.d.ts.map +1 -1
  193. package/src/lib/invariant-validator.js +5 -0
  194. package/src/lib/invariant-validator.js.map +1 -1
  195. package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -1
  196. package/src/lib/invariants/recipient-id-consistency.js +9 -4
  197. package/src/lib/invariants/recipient-id-consistency.js.map +1 -1
  198. package/src/lib/voting/interfaces/aggregated-tally.d.ts +3 -0
  199. package/src/lib/voting/interfaces/aggregated-tally.d.ts.map +1 -1
  200. package/src/lib/voting/interfaces/audit-entry.d.ts +3 -0
  201. package/src/lib/voting/interfaces/audit-entry.d.ts.map +1 -1
  202. package/src/lib/voting/interfaces/audit-log.d.ts +3 -0
  203. package/src/lib/voting/interfaces/audit-log.d.ts.map +1 -1
  204. package/src/lib/voting/interfaces/bulletin-board-entry.d.ts +3 -0
  205. package/src/lib/voting/interfaces/bulletin-board-entry.d.ts.map +1 -1
  206. package/src/lib/voting/interfaces/bulletin-board.d.ts +3 -0
  207. package/src/lib/voting/interfaces/bulletin-board.d.ts.map +1 -1
  208. package/src/lib/voting/interfaces/checkpoint-manager-extended.d.ts +3 -0
  209. package/src/lib/voting/interfaces/checkpoint-manager-extended.d.ts.map +1 -1
  210. package/src/lib/voting/interfaces/checkpoint-manager.d.ts +3 -0
  211. package/src/lib/voting/interfaces/checkpoint-manager.d.ts.map +1 -1
  212. package/src/lib/voting/interfaces/encrypted-vote.d.ts +3 -0
  213. package/src/lib/voting/interfaces/encrypted-vote.d.ts.map +1 -1
  214. package/src/lib/voting/interfaces/event-log-entry.d.ts +3 -0
  215. package/src/lib/voting/interfaces/event-log-entry.d.ts.map +1 -1
  216. package/src/lib/voting/interfaces/event-logger.d.ts +3 -0
  217. package/src/lib/voting/interfaces/event-logger.d.ts.map +1 -1
  218. package/src/lib/voting/interfaces/jurisdiction-config.d.ts +3 -0
  219. package/src/lib/voting/interfaces/jurisdiction-config.d.ts.map +1 -1
  220. package/src/lib/voting/interfaces/plaintext-vote.d.ts +3 -0
  221. package/src/lib/voting/interfaces/plaintext-vote.d.ts.map +1 -1
  222. package/src/lib/voting/interfaces/poll-tallier.d.ts +3 -0
  223. package/src/lib/voting/interfaces/poll-tallier.d.ts.map +1 -1
  224. package/src/lib/voting/interfaces/poll.d.ts +3 -0
  225. package/src/lib/voting/interfaces/poll.d.ts.map +1 -1
  226. package/src/lib/voting/interfaces/state-snapshot.d.ts +3 -0
  227. package/src/lib/voting/interfaces/state-snapshot.d.ts.map +1 -1
  228. package/src/lib/voting/interfaces/tally-proof.d.ts +3 -0
  229. package/src/lib/voting/interfaces/tally-proof.d.ts.map +1 -1
  230. package/src/lib/voting/interfaces/vote-encoder.d.ts +3 -0
  231. package/src/lib/voting/interfaces/vote-encoder.d.ts.map +1 -1
  232. package/src/lib/voting/interfaces/vote-logger-extended.d.ts +3 -0
  233. package/src/lib/voting/interfaces/vote-logger-extended.d.ts.map +1 -1
  234. package/src/lib/voting/interfaces/vote-logger.d.ts +3 -0
  235. package/src/lib/voting/interfaces/vote-logger.d.ts.map +1 -1
  236. package/src/lib/voting/interfaces/voting-receipt.d.ts +3 -0
  237. package/src/lib/voting/interfaces/voting-receipt.d.ts.map +1 -1
  238. package/src/lib/voting/poll.d.ts.map +1 -1
  239. package/src/lib/voting/poll.js +2 -2
  240. package/src/lib/voting/poll.js.map +1 -1
  241. package/src/lib/voting/test-voter-pool.d.ts.map +1 -1
  242. package/src/lib/voting/test-voter-pool.js +5 -0
  243. package/src/lib/voting/test-voter-pool.js.map +1 -1
  244. package/src/member.d.ts +8 -0
  245. package/src/member.d.ts.map +1 -1
  246. package/src/member.js +28 -20
  247. package/src/member.js.map +1 -1
  248. package/src/secure-buffer.d.ts.map +1 -1
  249. package/src/secure-buffer.js +5 -0
  250. package/src/secure-buffer.js.map +1 -1
  251. package/src/services/aes-gcm.d.ts.map +1 -1
  252. package/src/services/aes-gcm.js +5 -0
  253. package/src/services/aes-gcm.js.map +1 -1
  254. package/src/services/chunk-processor.d.ts +3 -0
  255. package/src/services/chunk-processor.d.ts.map +1 -1
  256. package/src/services/chunk-processor.js +2 -2
  257. package/src/services/chunk-processor.js.map +1 -1
  258. package/src/services/crc.d.ts +90 -0
  259. package/src/services/crc.d.ts.map +1 -0
  260. package/src/services/crc.js +198 -0
  261. package/src/services/crc.js.map +1 -0
  262. package/src/services/ecies/crypto-core.d.ts.map +1 -1
  263. package/src/services/ecies/crypto-core.js +3 -0
  264. package/src/services/ecies/crypto-core.js.map +1 -1
  265. package/src/services/ecies/file.d.ts.map +1 -1
  266. package/src/services/ecies/file.js +10 -7
  267. package/src/services/ecies/file.js.map +1 -1
  268. package/src/services/ecies/index.d.ts +4 -2
  269. package/src/services/ecies/index.d.ts.map +1 -1
  270. package/src/services/ecies/index.js +4 -2
  271. package/src/services/ecies/index.js.map +1 -1
  272. package/src/services/ecies/interfaces/index.d.ts +3 -0
  273. package/src/services/ecies/interfaces/index.d.ts.map +1 -1
  274. package/src/services/ecies/interfaces/multi-encrypted-message.d.ts +3 -0
  275. package/src/services/ecies/interfaces/multi-encrypted-message.d.ts.map +1 -1
  276. package/src/services/ecies/interfaces/multi-encrypted-parsed-header.d.ts +3 -0
  277. package/src/services/ecies/interfaces/multi-encrypted-parsed-header.d.ts.map +1 -1
  278. package/src/services/ecies/interfaces/multi-recipient.d.ts +3 -0
  279. package/src/services/ecies/interfaces/multi-recipient.d.ts.map +1 -1
  280. package/src/services/ecies/interfaces/simple-keypair.d.ts +3 -0
  281. package/src/services/ecies/interfaces/simple-keypair.d.ts.map +1 -1
  282. package/src/services/ecies/interfaces/single-encrypted-parsed-header.d.ts +3 -0
  283. package/src/services/ecies/interfaces/single-encrypted-parsed-header.d.ts.map +1 -1
  284. package/src/services/ecies/interfaces/wallet-seed.d.ts +3 -0
  285. package/src/services/ecies/interfaces/wallet-seed.d.ts.map +1 -1
  286. package/src/services/ecies/multi-recipient.d.ts +5 -5
  287. package/src/services/ecies/multi-recipient.d.ts.map +1 -1
  288. package/src/services/ecies/multi-recipient.js +11 -6
  289. package/src/services/ecies/multi-recipient.js.map +1 -1
  290. package/src/services/ecies/service.d.ts +18 -5
  291. package/src/services/ecies/service.d.ts.map +1 -1
  292. package/src/services/ecies/service.js +29 -21
  293. package/src/services/ecies/service.js.map +1 -1
  294. package/src/services/ecies/signature.d.ts +3 -0
  295. package/src/services/ecies/signature.d.ts.map +1 -1
  296. package/src/services/ecies/signature.js +3 -0
  297. package/src/services/ecies/signature.js.map +1 -1
  298. package/src/services/ecies/single-recipient.d.ts +6 -6
  299. package/src/services/ecies/single-recipient.d.ts.map +1 -1
  300. package/src/services/ecies/single-recipient.js +27 -23
  301. package/src/services/ecies/single-recipient.js.map +1 -1
  302. package/src/services/ecies/utilities.d.ts +3 -0
  303. package/src/services/ecies/utilities.d.ts.map +1 -1
  304. package/src/services/ecies/utilities.js +8 -5
  305. package/src/services/ecies/utilities.js.map +1 -1
  306. package/src/services/encryption-stream.d.ts +8 -2
  307. package/src/services/encryption-stream.d.ts.map +1 -1
  308. package/src/services/encryption-stream.js +9 -2
  309. package/src/services/encryption-stream.js.map +1 -1
  310. package/src/services/index.d.ts +4 -0
  311. package/src/services/index.d.ts.map +1 -1
  312. package/src/services/index.js +4 -0
  313. package/src/services/index.js.map +1 -1
  314. package/src/services/multi-recipient-processor.d.ts +3 -3
  315. package/src/services/multi-recipient-processor.d.ts.map +1 -1
  316. package/src/services/multi-recipient-processor.js +5 -2
  317. package/src/services/multi-recipient-processor.js.map +1 -1
  318. package/src/services/pbkdf2.d.ts.map +1 -1
  319. package/src/services/pbkdf2.js +8 -5
  320. package/src/services/pbkdf2.js.map +1 -1
  321. package/src/services/progress-tracker.d.ts +3 -0
  322. package/src/services/progress-tracker.d.ts.map +1 -1
  323. package/src/services/progress-tracker.js.map +1 -1
  324. package/src/test-mocks/index.d.ts +3 -0
  325. package/src/test-mocks/index.d.ts.map +1 -1
  326. package/src/test-mocks/index.js +3 -0
  327. package/src/test-mocks/index.js.map +1 -1
  328. package/src/test-mocks/mock-backend-member.d.ts.map +1 -1
  329. package/src/test-mocks/mock-backend-member.js +5 -0
  330. package/src/test-mocks/mock-backend-member.js.map +1 -1
  331. package/src/testing.d.ts +4 -0
  332. package/src/testing.d.ts.map +1 -1
  333. package/src/testing.js +4 -1
  334. package/src/testing.js.map +1 -1
  335. package/src/transforms/checksumTransform.d.ts +5 -0
  336. package/src/transforms/checksumTransform.d.ts.map +1 -1
  337. package/src/transforms/checksumTransform.js +5 -0
  338. package/src/transforms/checksumTransform.js.map +1 -1
  339. package/src/transforms/eciesDecryptTransform.d.ts +5 -0
  340. package/src/transforms/eciesDecryptTransform.d.ts.map +1 -1
  341. package/src/transforms/eciesDecryptTransform.js +7 -4
  342. package/src/transforms/eciesDecryptTransform.js.map +1 -1
  343. package/src/transforms/eciesEncryptTransform.d.ts +5 -0
  344. package/src/transforms/eciesEncryptTransform.d.ts.map +1 -1
  345. package/src/transforms/eciesEncryptTransform.js +8 -5
  346. package/src/transforms/eciesEncryptTransform.js.map +1 -1
  347. package/src/transforms/index.d.ts +4 -0
  348. package/src/transforms/index.d.ts.map +1 -1
  349. package/src/transforms/index.js +4 -0
  350. package/src/transforms/index.js.map +1 -1
  351. package/src/transforms/xorMultipleTransform.d.ts +5 -0
  352. package/src/transforms/xorMultipleTransform.d.ts.map +1 -1
  353. package/src/transforms/xorMultipleTransform.js +5 -0
  354. package/src/transforms/xorMultipleTransform.js.map +1 -1
  355. package/src/transforms/xorTransform.d.ts +5 -0
  356. package/src/transforms/xorTransform.d.ts.map +1 -1
  357. package/src/transforms/xorTransform.js +5 -0
  358. package/src/transforms/xorTransform.js.map +1 -1
  359. package/src/typed-configuration.d.ts +1 -1
  360. package/src/typed-configuration.d.ts.map +1 -1
  361. package/src/typed-configuration.js +2 -2
  362. package/src/typed-configuration.js.map +1 -1
  363. package/src/types/guid-versions.d.ts +6 -6
  364. package/src/types/guid-versions.d.ts.map +1 -1
  365. package/src/types/index.d.ts +3 -0
  366. package/src/types/index.d.ts.map +1 -1
  367. package/src/types/index.js +3 -0
  368. package/src/types/index.js.map +1 -1
  369. package/src/types.d.ts +5 -0
  370. package/src/types.d.ts.map +1 -1
  371. package/src/types.js.map +1 -1
  372. package/src/utils.d.ts.map +1 -1
  373. package/src/utils.js +6 -1
  374. package/src/utils.js.map +1 -1
package/README.md CHANGED
@@ -8,7 +8,7 @@ A Node.js-specific implementation of the Digital Defiance ECIES (Elliptic Curve
8
8
 
9
9
  Part of [Express Suite](https://github.com/Digital-Defiance/express-suite)
10
10
 
11
- > Current Version: v4.10.6
11
+ > Current Version: v4.13.0
12
12
 
13
13
  This library implements a modern, enterprise-grade ECIES protocol (v4.0) featuring HKDF key derivation, AAD binding, and optimized multi-recipient encryption. It includes a pluggable ID provider system, memory-efficient streaming encryption, and comprehensive internationalization.
14
14
 
@@ -26,8 +26,8 @@ This library implements a modern, enterprise-grade ECIES protocol (v4.0) featuri
26
26
  - **Symmetric**: `AES-256-GCM` for authenticated symmetric encryption.
27
27
  - **Hashing**: `SHA-256` and `SHA-512`.
28
28
  - **Modes**:
29
- - **Simple**: Minimal overhead (no length prefix).
30
- - **Single**: Includes data length prefix.
29
+ - **Basic**: Minimal overhead (no length prefix).
30
+ - **WithLength**: Includes data length prefix.
31
31
  - **Multiple**: Efficient encryption for up to 65,535 recipients.
32
32
 
33
33
  ### 🆔 Identity & Management
@@ -145,7 +145,7 @@ import {
145
145
  import { ObjectIdProvider } from '@digitaldefiance/ecies-lib';
146
146
 
147
147
  // 1. Configure (Optional - defaults to ObjectIdProvider)
148
- registerNodeRuntimeConfiguration({
148
+ registerNodeRuntimeConfiguration('my-app-config', {
149
149
  idProvider: new ObjectIdProvider()
150
150
  });
151
151
 
@@ -158,8 +158,8 @@ const { privateKey, publicKey } = ecies.mnemonicToSimpleKeyPair(mnemonic);
158
158
 
159
159
  // 4. Encrypt & Decrypt
160
160
  const message = Buffer.from('Hello, Secure World!');
161
- const encrypted = ecies.encryptSimpleOrSingle(false, publicKey, message);
162
- const decrypted = ecies.decryptSimpleOrSingleWithHeader(false, privateKey, encrypted);
161
+ const encrypted = ecies.encryptWithLength(publicKey, message);
162
+ const decrypted = ecies.decryptWithLengthAndHeader(privateKey, encrypted);
163
163
 
164
164
  console.log(decrypted.toString()); // "Hello, Secure World!"
165
165
  ```
@@ -274,7 +274,7 @@ import {
274
274
  import { GuidV4Provider } from '@digitaldefiance/ecies-lib';
275
275
 
276
276
  // Configure to use 16-byte GUIDs
277
- const config = registerNodeRuntimeConfiguration({
277
+ const config = registerNodeRuntimeConfiguration('guid-config', {
278
278
  idProvider: new GuidV4Provider()
279
279
  });
280
280
 
@@ -286,7 +286,7 @@ const id = config.idProvider.generate(); // Returns 16-byte Uint8Array
286
286
 
287
287
  ```typescript
288
288
  // Option 1: Pass IConstants directly (recommended)
289
- const config = registerNodeRuntimeConfiguration({ idProvider: new GuidV4Provider() });
289
+ const config = registerNodeRuntimeConfiguration('my-config', { idProvider: new GuidV4Provider() });
290
290
  const ecies1 = new ECIESService(config);
291
291
 
292
292
  // Option 2: Pass partial ECIES config (legacy)
@@ -536,7 +536,7 @@ describe('Node ECIES Encryption', () => {
536
536
  let ecies: ECIESService;
537
537
 
538
538
  beforeEach(() => {
539
- registerNodeRuntimeConfiguration({
539
+ registerNodeRuntimeConfiguration('test-config', {
540
540
  idProvider: new ObjectIdProvider()
541
541
  });
542
542
  ecies = new ECIESService();
@@ -547,8 +547,8 @@ describe('Node ECIES Encryption', () => {
547
547
  const { privateKey, publicKey } = ecies.mnemonicToSimpleKeyPair(mnemonic);
548
548
 
549
549
  const message = Buffer.from('Secret Message');
550
- const encrypted = ecies.encryptSimpleOrSingle(false, publicKey, message);
551
- const decrypted = ecies.decryptSimpleOrSingleWithHeader(false, privateKey, encrypted);
550
+ const encrypted = ecies.encryptWithLength(publicKey, message);
551
+ const decrypted = ecies.decryptWithLengthAndHeader(privateKey, encrypted);
552
552
 
553
553
  expect(decrypted.toString()).toBe('Secret Message');
554
554
  });
@@ -595,11 +595,10 @@ describe('Binary Compatibility', () => {
595
595
 
596
596
  // Encrypt in browser
597
597
  const message = new TextEncoder().encode('Cross-platform message');
598
- const encrypted = await browserEcies.encryptSimpleOrSingle(false, publicKey, message);
598
+ const encrypted = await browserEcies.encryptWithLength(publicKey, message);
599
599
 
600
600
  // Decrypt in Node.js
601
- const decrypted = nodeEcies.decryptSimpleOrSingleWithHeader(
602
- false,
601
+ const decrypted = nodeEcies.decryptWithLengthAndHeader(
603
602
  Buffer.from(privateKey),
604
603
  Buffer.from(encrypted)
605
604
  );
@@ -625,8 +624,8 @@ describe('Cryptographic Properties', () => {
625
624
  fc.uint8Array({ minLength: 1, maxLength: 1000 }),
626
625
  (data) => {
627
626
  const message = Buffer.from(data);
628
- const encrypted = ecies.encryptSimpleOrSingle(false, publicKey, message);
629
- const decrypted = ecies.decryptSimpleOrSingleWithHeader(false, privateKey, encrypted);
627
+ const encrypted = ecies.encryptWithLength(publicKey, message);
628
+ const decrypted = ecies.decryptWithLengthAndHeader(privateKey, encrypted);
630
629
 
631
630
  expect(decrypted.equals(message)).toBe(true);
632
631
  }
@@ -672,6 +671,56 @@ describe('Integration with suite-core-lib', () => {
672
671
 
673
672
  ## ChangeLog
674
673
 
674
+ ### v4.13.0 - API Naming Improvements & Configuration Enhancements
675
+
676
+ **Breaking Changes:**
677
+
678
+ - **Encryption Mode Renaming**:
679
+ - `SIMPLE` → `BASIC` (constant)
680
+ - `SINGLE` → `WITH_LENGTH` (constant)
681
+ - `encryptSimpleOrSingle(isSimple, ...)` → `encryptBasic(...)` / `encryptWithLength(...)`
682
+ - `decryptSimpleOrSingleWithHeader(isSimple, ...)` → `decryptBasicWithHeader(...)` / `decryptWithLengthAndHeader(...)`
683
+
684
+ - **registerNodeRuntimeConfiguration Signature Change**:
685
+ - Now requires a key parameter: `registerNodeRuntimeConfiguration(key, overrides)`
686
+ - Supports both `symbol` and `string` keys
687
+ - Overloaded to support `registerNodeRuntimeConfiguration(overrides)` which auto-generates a symbol key
688
+
689
+ - **Removed Constants**:
690
+ - `OBJECT_ID_LENGTH` removed - use `idProvider.byteLength` instead
691
+
692
+ - **GuidBuffer Class Renamed**:
693
+ - `Guid` → `GuidBuffer` (Node.js Buffer-based implementation)
694
+ - Added `VersionedGuidBuffer<V>` type for compile-time version tracking
695
+
696
+ **New Features:**
697
+
698
+ - **ECIES_CONFIG**: New configuration interface and constant inherited from ecies-lib
699
+
700
+ - **TranslatableNodeEciesError**: New error class with automatic i18n translation
701
+ ```typescript
702
+ throw new TranslatableNodeEciesError('INVALID_KEY', { keyLength: 32 });
703
+ ```
704
+
705
+ - **getNodeEciesTranslation()**: New helper function for translating node-ecies strings
706
+
707
+ - **Enhanced Type System for GUIDs**:
708
+ - `VersionedGuidBuffer<4>` for v4 UUIDs with compile-time version info
709
+ - `__version` property attached to parsed/generated GUIDs
710
+
711
+ **Migration Guide:**
712
+ ```typescript
713
+ // BEFORE (v4.12.x)
714
+ registerNodeRuntimeConfiguration({ idProvider: new GuidV4Provider() });
715
+ const encrypted = ecies.encryptSimpleOrSingle(false, publicKey, data);
716
+ const decrypted = ecies.decryptSimpleOrSingleWithHeader(false, privateKey, encrypted);
717
+
718
+ // AFTER (v4.13.0+)
719
+ registerNodeRuntimeConfiguration('my-app-config', { idProvider: new GuidV4Provider() });
720
+ const encrypted = ecies.encryptWithLength(publicKey, data);
721
+ const decrypted = ecies.decryptWithLengthAndHeader(privateKey, encrypted);
722
+ ```
723
+
675
724
  ### v4.12.0 - AESGCMService Refactoring & JSON Encryption
676
725
 
677
726
  **Breaking Changes:**
@@ -843,7 +892,7 @@ This release fixes a critical bug where `Member.newMember()` ignored the configu
843
892
 
844
893
  **Before (Broken):**
845
894
  ```typescript
846
- const config = registerNodeRuntimeConfiguration({ idProvider: new GuidV4Provider() });
895
+ const config = registerNodeRuntimeConfiguration('guid-config', { idProvider: new GuidV4Provider() });
847
896
  const service = new ECIESService(config);
848
897
  const { member } = Member.newMember(service, MemberType.User, 'Alice', email);
849
898
  console.log(member.id.length); // 12 (wrong - used default ObjectIdProvider)
@@ -851,7 +900,7 @@ console.log(member.id.length); // 12 (wrong - used default ObjectIdProvider)
851
900
 
852
901
  **After (Fixed):**
853
902
  ```typescript
854
- const config = registerNodeRuntimeConfiguration({ idProvider: new GuidV4Provider() });
903
+ const config = registerNodeRuntimeConfiguration('guid-config', { idProvider: new GuidV4Provider() });
855
904
  const service = new ECIESService(config);
856
905
  const { member } = Member.newMember(service, MemberType.User, 'Alice', email);
857
906
  console.log(member.id.length); // 16 (correct - uses configured GuidV4Provider)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitaldefiance/node-ecies-lib",
3
- "version": "4.12.7",
3
+ "version": "4.13.0",
4
4
  "description": "Digital Defiance Node ECIES Library",
5
5
  "homepage": "https://github.com/Digital-Defiance/node-ecies-lib",
6
6
  "repository": {
@@ -62,7 +62,7 @@
62
62
  "license": "MIT",
63
63
  "packageManager": "yarn@4.10.3",
64
64
  "dependencies": {
65
- "@digitaldefiance/ecies-lib": "4.12.7",
65
+ "@digitaldefiance/ecies-lib": "4.13.0",
66
66
  "@digitaldefiance/express-suite-test-utils": "1.0.14",
67
67
  "@digitaldefiance/i18n-lib": "3.8.16",
68
68
  "@ethereumjs/wallet": "^10.0.0",
@@ -70,6 +70,7 @@
70
70
  "@noble/hashes": "1.8.0",
71
71
  "@scure/bip32": "1.7.0",
72
72
  "bson": "^6.10.4",
73
+ "crc": "^4.3.2",
73
74
  "ethereum-cryptography": "^3.2.0",
74
75
  "js-sha3": "^0.9.3",
75
76
  "paillier-bigint": "^3.4.1",
@@ -77,8 +78,8 @@
77
78
  },
78
79
  "devDependencies": {
79
80
  "@digitaldefiance/express-suite-test-utils": "1.0.12",
80
- "@typescript-eslint/eslint-plugin": "^8.52.0",
81
- "@typescript-eslint/parser": "^8.52.0",
81
+ "@typescript-eslint/eslint-plugin": "^8.53.1",
82
+ "@typescript-eslint/parser": "^8.53.1",
82
83
  "eslint-plugin-import": "^2.32.0",
83
84
  "eslint-plugin-prettier": "^5.5.4",
84
85
  "fast-check": "^4.3.0",
@@ -1,3 +1,15 @@
1
+ /**
2
+ * Fluent builder for ECIESService instances.
3
+ * Provides a convenient way to configure and create ECIESService with custom settings.
4
+ *
5
+ * @example
6
+ * ```typescript
7
+ * const service = ECIESBuilder.create()
8
+ * .withServiceConfig({ enableCompression: true })
9
+ * .withConstants({ IV_SIZE: 16 })
10
+ * .build();
11
+ * ```
12
+ */
1
13
  import { IECIESConfig, IECIESConstants } from '@digitaldefiance/ecies-lib';
2
14
  import { ECIESService } from '../services/ecies';
3
15
  export declare class ECIESBuilder {
@@ -1 +1 @@
1
- {"version":3,"file":"ecies-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,qBAAa,YAAY;IACvB,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,WAAW,CAAgC;IAEnD,MAAM,CAAC,MAAM,IAAI,YAAY;IAI7B,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAKtD,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAKxD,KAAK,IAAI,YAAY;CAItB"}
1
+ {"version":3,"file":"ecies-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG3E,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,qBAAa,YAAY;IACvB,OAAO,CAAC,aAAa,CAA6B;IAClD,OAAO,CAAC,WAAW,CAAgC;IAEnD,MAAM,CAAC,MAAM,IAAI,YAAY;IAI7B,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,IAAI;IAKtD,aAAa,CAAC,SAAS,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;IAKxD,KAAK,IAAI,YAAY;CAItB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ecies-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":";;;AAEA,4CAAyC;AACzC,6CAAiD;AAEjD,MAAa,YAAY;IACf,aAAa,GAA0B,EAAE,CAAC;IAC1C,WAAW,GAA6B,EAAE,CAAC;IAEnD,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB,CAAC,MAA6B;QAC7C,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,MAAM,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAmC;QAC/C,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,SAAS,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,MAAM,cAAc,GAAG,EAAE,GAAG,qBAAS,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnE,OAAO,IAAI,oBAAY,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;CACF;AAtBD,oCAsBC"}
1
+ {"version":3,"file":"ecies-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":";;;AAcA,4CAAyC;AACzC,6CAAiD;AAEjD,MAAa,YAAY;IACf,aAAa,GAA0B,EAAE,CAAC;IAC1C,WAAW,GAA6B,EAAE,CAAC;IAEnD,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,YAAY,EAAE,CAAC;IAC5B,CAAC;IAED,iBAAiB,CAAC,MAA6B;QAC7C,IAAI,CAAC,aAAa,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,EAAE,GAAG,MAAM,EAAE,CAAC;QAC1D,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAmC;QAC/C,IAAI,CAAC,WAAW,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,SAAS,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,MAAM,cAAc,GAAG,EAAE,GAAG,qBAAS,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnE,OAAO,IAAI,oBAAY,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;CACF;AAtBD,oCAsBC"}
@@ -1,3 +1,6 @@
1
+ /**
2
+ * Builder exports for the Node ECIES library.
3
+ */
1
4
  export * from './ecies-builder';
2
5
  export * from './member-builder';
3
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
+ /**
5
+ * Builder exports for the Node ECIES library.
6
+ */
4
7
  tslib_1.__exportStar(require("./ecies-builder"), exports);
5
8
  tslib_1.__exportStar(require("./member-builder"), exports);
6
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/index.ts"],"names":[],"mappings":";;;AAAA,0DAAgC;AAChC,2DAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/index.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,0DAAgC;AAChC,2DAAiC"}
@@ -1,3 +1,19 @@
1
+ /**
2
+ * Fluent builder for Member instances with Node.js-specific features.
3
+ * Provides a convenient way to configure and create Member instances with all required properties,
4
+ * including support for Buffer-based IDs and Node.js crypto primitives.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * const { member, mnemonic } = MemberBuilder.create()
9
+ * .withEciesService(service)
10
+ * .withType(MemberType.User)
11
+ * .withName('Alice')
12
+ * .withEmail('alice@example.com')
13
+ * .generateMnemonic()
14
+ * .build();
15
+ * ```
16
+ */
1
17
  import { EmailString, MemberType, SecureString } from '@digitaldefiance/ecies-lib';
2
18
  import { PlatformID } from '../interfaces';
3
19
  import { IBackendMemberWithMnemonic } from '../interfaces/member-with-mnemonic';
@@ -1 +1 @@
1
- {"version":3,"file":"member-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACb,MAAM,4BAA4B,CAAC;AAQpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,qBAAa,aAAa;IACxB,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,IAAI,CAAC,CAAa;IAC1B,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,CAAe;IAChC,OAAO,CAAC,SAAS,CAAC,CAAS;IAE3B,MAAM,CAAC,MAAM,IAAI,aAAa;IAI9B,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAK7C,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAKhC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK5B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAK5C,YAAY,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAK1C,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKtC,gBAAgB,IAAI,IAAI;IAcxB,KAAK,IAAI,0BAA0B;IA6BnC;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EAC9C,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,GAAG,MAAM,EAC3B,aAAa,CAAC,EAAE,YAAY,EAC5B,SAAS,CAAC,EAAE,GAAG,GACd,0BAA0B,CAAC,GAAG,CAAC;IAclC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;IAK3E;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACjD,QAAQ,EAAE,YAAY,EACtB,UAAU,aAAkB,EAC5B,IAAI,SAAc,EAClB,KAAK,GAAE,WAAW,GAAG,MAA2B,GAC/C,MAAM,CAAC,GAAG,CAAC;CAYf"}
1
+ {"version":3,"file":"member-builder.d.ts","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EACL,WAAW,EACX,UAAU,EACV,YAAY,EACb,MAAM,4BAA4B,CAAC;AAQpC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGjD,qBAAa,aAAa;IACxB,OAAO,CAAC,YAAY,CAAC,CAAe;IACpC,OAAO,CAAC,IAAI,CAAC,CAAa;IAC1B,OAAO,CAAC,IAAI,CAAC,CAAS;IACtB,OAAO,CAAC,KAAK,CAAC,CAAc;IAC5B,OAAO,CAAC,QAAQ,CAAC,CAAe;IAChC,OAAO,CAAC,SAAS,CAAC,CAAS;IAE3B,MAAM,CAAC,MAAM,IAAI,aAAa;IAI9B,gBAAgB,CAAC,OAAO,EAAE,YAAY,GAAG,IAAI;IAK7C,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAKhC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAK5B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAK5C,YAAY,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAK1C,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKtC,gBAAgB,IAAI,IAAI;IAcxB,KAAK,IAAI,0BAA0B;IA6BnC;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EAC9C,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,WAAW,GAAG,MAAM,EAC3B,aAAa,CAAC,EAAE,YAAY,EAC5B,SAAS,CAAC,EAAE,GAAG,GACd,0BAA0B,CAAC,GAAG,CAAC;IAclC;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;IAK3E;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CAAC,GAAG,SAAS,UAAU,GAAG,MAAM,EACjD,QAAQ,EAAE,YAAY,EACtB,UAAU,aAAkB,EAC5B,IAAI,SAAc,EAClB,KAAK,GAAE,WAAW,GAAG,MAA2B,GAC/C,MAAM,CAAC,GAAG,CAAC;CAYf"}
@@ -1,6 +1,22 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MemberBuilder = void 0;
4
+ /**
5
+ * Fluent builder for Member instances with Node.js-specific features.
6
+ * Provides a convenient way to configure and create Member instances with all required properties,
7
+ * including support for Buffer-based IDs and Node.js crypto primitives.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * const { member, mnemonic } = MemberBuilder.create()
12
+ * .withEciesService(service)
13
+ * .withType(MemberType.User)
14
+ * .withName('Alice')
15
+ * .withEmail('alice@example.com')
16
+ * .generateMnemonic()
17
+ * .build();
18
+ * ```
19
+ */
4
20
  const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
5
21
  const constants_1 = require("../constants");
6
22
  const ecies_i18n_factory_1 = require("../i18n/ecies-i18n-factory");
@@ -1 +1 @@
1
- {"version":3,"file":"member-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"member-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-node-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;GAeG;AACH,0DAIoC;AAEpC,4CAA2D;AAC3D,mEAGoC;AACpC,yEAAuE;AAGvE,sCAAmC;AACnC,6CAAiD;AACjD,MAAM,SAAS,GAAG,IAAA,uCAA2B,GAAE,CAAC;AAEhD,MAAa,aAAa;IAChB,YAAY,CAAgB;IAC5B,IAAI,CAAc;IAClB,IAAI,CAAU;IACd,KAAK,CAAe;IACpB,QAAQ,CAAgB;IACxB,SAAS,CAAU;IAE3B,MAAM,CAAC,MAAM;QACX,OAAO,IAAI,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,gBAAgB,CAAC,OAAqB;QACpC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAgB;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,QAAQ,CAAC,IAAY;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,SAAS,CAAC,KAA2B;QACnC,IAAI,CAAC,KAAK,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACxE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,QAAsB;QACjC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,aAAa,CAAC,SAAiB;QAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gBAAgB;QACd,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,MAAM,GAAG,IAAA,8CAAsB,GAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,SAAS,CACd,yCAAoB,EACpB,uCAAkB,CAAC,2DAA2D,CAC/E,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,mBAAmB,EAAE,CAAC;QACxD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,MAAM,MAAM,GAAG,IAAA,8CAAsB,GAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,SAAS,CACd,yCAAoB,EACpB,uCAAkB,CAAC,oCAAoC,CACxD,CACF,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,SAAS,CACd,yCAAoB,EACpB,uCAAkB,CAAC,yCAAyC,CAC7D,CACF,CAAC;QACJ,CAAC;QAED,OAAO,eAAM,CAAC,SAAS,CACrB,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,SAAS,CACf,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACH,MAAM,CAAC,SAAS,CACd,IAAgB,EAChB,IAAY,EACZ,KAA2B,EAC3B,aAA4B,EAC5B,SAAe;QAEf,MAAM,OAAO,GAAG,IAAI,oBAAY,CAAM,SAAS,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE5E,OAAO,eAAM,CAAC,SAAS,CACrB,OAAO,EACP,IAAI,EACJ,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,SAAS,CACV,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAkC,IAAY;QAC3D,MAAM,OAAO,GAAG,IAAI,oBAAY,EAAE,CAAC;QACnC,OAAO,eAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAgB,CAAC;IACvD,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,YAAY,CACjB,QAAsB,EACtB,UAAU,GAAG,sBAAU,CAAC,IAAI,EAC5B,IAAI,GAAG,WAAW,EAClB,QAA8B,kBAAkB;QAEhD,MAAM,OAAO,GAAG,IAAI,oBAAY,EAAE,CAAC;QACnC,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,uBAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE5E,OAAO,eAAM,CAAC,YAAY,CACxB,QAAQ,EACR,OAAO,EACP,UAAU,EACV,IAAI,EACJ,QAAQ,CACM,CAAC;IACnB,CAAC;CACF;AArJD,sCAqJC"}
@@ -1,5 +1,11 @@
1
+ /**
2
+ * Constants and configuration for Node.js ECIES library.
3
+ * Provides runtime configuration with Node.js-specific crypto settings, PBKDF2 profiles,
4
+ * keyring configuration, and encryption constants. Extends base ecies-lib constants
5
+ * with Node.js Buffer support and crypto module integration.
6
+ */
1
7
  import { CipherGCMTypes } from 'crypto';
2
- import type { IConstants as IBaseConstants, IPBkdf2Consts } from '@digitaldefiance/ecies-lib';
8
+ import type { IPBkdf2Consts } from '@digitaldefiance/ecies-lib';
3
9
  import { registerRuntimeConfiguration } from '@digitaldefiance/ecies-lib';
4
10
  import type { IChecksumConsts } from './interfaces/checksum-consts';
5
11
  import type { IConstants } from './interfaces/constants';
@@ -25,19 +31,11 @@ export declare const NODE_RUNTIME_CONFIGURATION_KEY: unique symbol;
25
31
  /**
26
32
  * Node runtime configuration type (extends base IConstants)
27
33
  */
28
- export type NodeRuntimeConfiguration = IBaseConstants;
34
+ export type NodeRuntimeConfiguration = IConstants;
29
35
  /**
30
36
  * Overrides for node runtime configuration
31
37
  */
32
38
  export type NodeRuntimeOverrides = Parameters<typeof registerRuntimeConfiguration>[1];
33
- export declare const NODE_DEFAULTS_OVERRIDES: NodeRuntimeOverrides;
34
- /**
35
- * Ensure the runtime configuration is initialized.
36
- * This is called automatically at module load, but can be called explicitly if needed.
37
- */
38
- export declare function ensureNodeRuntimeConfiguration(): void;
39
- export declare function getNodeRuntimeConfiguration(): NodeRuntimeConfiguration;
40
- export declare function registerNodeRuntimeConfiguration(configOrOverrides?: NodeRuntimeOverrides | NodeRuntimeConfiguration, options?: Parameters<typeof registerRuntimeConfiguration>[2]): NodeRuntimeConfiguration;
41
39
  export declare const CHECKSUM: IChecksumConsts;
42
40
  export declare const KEYRING: IKeyringConsts;
43
41
  export declare const PBKDF2: IPBkdf2Consts;
@@ -49,5 +47,20 @@ export declare const KEYRING_ALGORITHM_CONFIGURATION: CipherGCMTypes;
49
47
  */
50
48
  export declare const ENCRYPTION: IEncryptionConsts;
51
49
  export declare const Constants: IConstants;
50
+ /**
51
+ * Creates a node-specific runtime configuration with overrides.
52
+ * Uses Constants as the base and applies node-specific defaults.
53
+ */
54
+ export declare function createNodeRuntimeConfiguration(overrides?: NodeRuntimeOverrides): NodeRuntimeConfiguration;
55
+ /**
56
+ * Registers a node-specific runtime configuration.
57
+ *
58
+ * @overload When called with just overrides, generates a unique symbol key automatically.
59
+ * @overload When called with a key and overrides, uses the provided key.
60
+ */
61
+ export declare function registerNodeRuntimeConfiguration(overrides: NodeRuntimeOverrides): NodeRuntimeConfiguration;
62
+ export declare function registerNodeRuntimeConfiguration(key: symbol | string, overrides?: NodeRuntimeOverrides): NodeRuntimeConfiguration;
63
+ export declare function ensureNodeRuntimeConfiguration(): void;
64
+ export declare function getNodeRuntimeConfiguration(): NodeRuntimeConfiguration;
52
65
  export { calculateConfigChecksum, captureCreationStack };
53
66
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,KAAK,EACV,UAAU,IAAI,cAAc,EAC5B,aAAa,EACd,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAGL,4BAA4B,EAC7B,MAAM,4BAA4B,CAAC;AAUpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE;;;GAGG;AACH,iBAAS,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAQ3D;AAED;;GAEG;AACH,iBAAS,oBAAoB,IAAI,MAAM,CAOtC;AAED;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,eAE1C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAC3C,OAAO,4BAA4B,CACpC,CAAC,CAAC,CAAC,CAAC;AAQL,eAAO,MAAM,uBAAuB,EAAE,oBAMpC,CAAC;AAOH;;;GAGG;AACH,wBAAgB,8BAA8B,IAAI,IAAI,CAOrD;AAED,wBAAgB,2BAA2B,IAAI,wBAAwB,CAGtE;AAED,wBAAgB,gCAAgC,CAC9C,iBAAiB,CAAC,EAAE,oBAAoB,GAAG,wBAAwB,EACnE,OAAO,CAAC,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,GAC3D,wBAAwB,CAoB1B;AAGD,eAAO,MAAM,QAAQ,EAAE,eAA0C,CAAC;AAElE,eAAO,MAAM,OAAO,EAAE,cAIX,CAAC;AAEZ,eAAO,MAAM,MAAM,EAAE,aAAsC,CAAC;AAE5D,eAAO,MAAM,eAAe,EAAE,aAwCnB,CAAC;AAEZ,eAAO,MAAM,WAAW,EAAE,iBAKf,CAAC;AAEZ,eAAO,MAAM,+BAA+B,EACoB,cAAc,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,iBAGd,CAAC;AAEZ,eAAO,MAAM,SAAS,EAAE,UAiEb,CAAC;AA0CZ,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAEL,4BAA4B,EAE7B,MAAM,4BAA4B,CAAC;AAUpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAEjE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAEzE;;;GAGG;AACH,iBAAS,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAQ3D;AAED;;GAEG;AACH,iBAAS,oBAAoB,IAAI,MAAM,CAOtC;AAED;;;;GAIG;AACH,eAAO,MAAM,8BAA8B,eAE1C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAC3C,OAAO,4BAA4B,CACpC,CAAC,CAAC,CAAC,CAAC;AAWL,eAAO,MAAM,QAAQ,EAAE,eAAwC,CAAC;AAEhE,eAAO,MAAM,OAAO,EAAE,cAIX,CAAC;AAEZ,eAAO,MAAM,MAAM,EAAE,aAGpB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,aAwCnB,CAAC;AAEZ,eAAO,MAAM,WAAW,EAAE,iBAKf,CAAC;AAEZ,eAAO,MAAM,+BAA+B,EACoB,cAAc,CAAC;AAE/E;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,iBAGd,CAAC;AAEZ,eAAO,MAAM,SAAS,EAAE,UA+Bb,CAAC;AAkCZ;;;GAGG;AACH,wBAAgB,8BAA8B,CAC5C,SAAS,CAAC,EAAE,oBAAoB,GAC/B,wBAAwB,CAM1B;AAED;;;;;GAKG;AACH,wBAAgB,gCAAgC,CAC9C,SAAS,EAAE,oBAAoB,GAC9B,wBAAwB,CAAC;AAC5B,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,SAAS,CAAC,EAAE,oBAAoB,GAC/B,wBAAwB,CAAC;AA6C5B,wBAAgB,8BAA8B,IAAI,IAAI,CAOrD;AAED,wBAAgB,2BAA2B,IAAI,wBAAwB,CAGtE;AAGD,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,CAAC"}
package/src/constants.js CHANGED
@@ -1,9 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Constants = exports.ENCRYPTION = exports.KEYRING_ALGORITHM_CONFIGURATION = exports.WRAPPED_KEY = exports.PBKDF2_PROFILES = exports.PBKDF2 = exports.KEYRING = exports.CHECKSUM = exports.NODE_DEFAULTS_OVERRIDES = exports.NODE_RUNTIME_CONFIGURATION_KEY = void 0;
3
+ exports.Constants = exports.ENCRYPTION = exports.KEYRING_ALGORITHM_CONFIGURATION = exports.WRAPPED_KEY = exports.PBKDF2_PROFILES = exports.PBKDF2 = exports.KEYRING = exports.CHECKSUM = exports.NODE_RUNTIME_CONFIGURATION_KEY = void 0;
4
+ exports.createNodeRuntimeConfiguration = createNodeRuntimeConfiguration;
5
+ exports.registerNodeRuntimeConfiguration = registerNodeRuntimeConfiguration;
4
6
  exports.ensureNodeRuntimeConfiguration = ensureNodeRuntimeConfiguration;
5
7
  exports.getNodeRuntimeConfiguration = getNodeRuntimeConfiguration;
6
- exports.registerNodeRuntimeConfiguration = registerNodeRuntimeConfiguration;
7
8
  exports.calculateConfigChecksum = calculateConfigChecksum;
8
9
  exports.captureCreationStack = captureCreationStack;
9
10
  const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
@@ -46,49 +47,18 @@ exports.NODE_RUNTIME_CONFIGURATION_KEY = Symbol.for('digitaldefiance.node.ecies.
46
47
  * Uses MongoDB ObjectID format (12 bytes).
47
48
  */
48
49
  const DEFAULT_ID_PROVIDER = new ecies_lib_1.ObjectIdProvider();
49
- exports.NODE_DEFAULTS_OVERRIDES = Object.freeze({
50
- PBKDF2: {
51
- ALGORITHM: 'sha256',
52
- },
53
- // Register the ID provider to ensure MEMBER_ID_LENGTH and ECIES.MULTIPLE.RECIPIENT_ID_SIZE are synced
54
- idProvider: DEFAULT_ID_PROVIDER,
55
- });
56
- let runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, exports.NODE_DEFAULTS_OVERRIDES);
57
- /**
58
- * Ensure the runtime configuration is initialized.
59
- * This is called automatically at module load, but can be called explicitly if needed.
60
- */
61
- function ensureNodeRuntimeConfiguration() {
62
- if (!runtimeDefaults || !runtimeDefaults.idProvider) {
63
- runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, exports.NODE_DEFAULTS_OVERRIDES);
64
- }
65
- }
66
- function getNodeRuntimeConfiguration() {
67
- ensureNodeRuntimeConfiguration();
68
- return runtimeDefaults;
69
- }
70
- function registerNodeRuntimeConfiguration(configOrOverrides, options) {
71
- // Register configuration through ecies-lib's system
72
- // This handles auto-sync of idProvider -> MEMBER_ID_LENGTH and ECIES.MULTIPLE.RECIPIENT_ID_SIZE
73
- runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, configOrOverrides, options);
74
- // Note: ENCRYPTION.RECIPIENT_ID_SIZE is set at module initialization
75
- // and uses DEFAULT_ID_PROVIDER.byteLength. For runtime configurations with
76
- // different providers, code should reference config.ECIES.MULTIPLE.RECIPIENT_ID_SIZE
77
- // which is auto-synced by ecies-lib's createRuntimeConfiguration.
78
- // Validate Node-specific invariants (base ecies-lib invariants already validated)
79
- // Note: Validation temporarily disabled for configs without ENCRYPTION property
80
- // as runtimeDefaults doesn't include node-specific constants
81
- // InvariantValidator.validateAll(runtimeDefaults as IConstants);
82
- return runtimeDefaults;
83
- }
84
- // Use runtime defaults for base constants
85
- exports.CHECKSUM = runtimeDefaults.CHECKSUM;
50
+ // Import base constants from ecies-lib
51
+ // Use base constants directly
52
+ exports.CHECKSUM = ecies_lib_1.Constants.CHECKSUM;
86
53
  exports.KEYRING = Object.freeze({
87
54
  ALGORITHM: 'aes',
88
55
  KEY_BITS: 256,
89
56
  MODE: 'gcm',
90
57
  });
91
- exports.PBKDF2 = runtimeDefaults.PBKDF2;
58
+ exports.PBKDF2 = {
59
+ ...ecies_lib_1.Constants.PBKDF2,
60
+ ALGORITHM: 'sha256',
61
+ };
92
62
  exports.PBKDF2_PROFILES = Object.freeze({
93
63
  // Align browser password profile with high security expectations (sha512, 64-byte salt/hash, 2M iterations)
94
64
  [pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD]: Object.freeze({
@@ -145,68 +115,34 @@ exports.ENCRYPTION = Object.freeze({
145
115
  RECIPIENT_ID_SIZE: DEFAULT_ID_PROVIDER.byteLength,
146
116
  });
147
117
  exports.Constants = Object.freeze({
148
- ...runtimeDefaults,
118
+ ...ecies_lib_1.Constants,
149
119
  // Node-specific overrides and additions
150
- /**
151
- * PBKDF2 constants (Node.js crypto implementation)
152
- */
153
120
  PBKDF2: exports.PBKDF2,
154
- /**
155
- * PBKDF2 configuration profiles
156
- */
157
121
  PBKDF2_PROFILES: exports.PBKDF2_PROFILES,
158
- /**
159
- * Key Wrapping Service constants
160
- */
161
122
  WRAPPED_KEY: exports.WRAPPED_KEY,
162
- /**
163
- * Checksum constants used for data integrity
164
- */
165
123
  CHECKSUM: exports.CHECKSUM,
166
- /**
167
- * Keyring constants used for key management
168
- */
169
124
  KEYRING: exports.KEYRING,
170
- /**
171
- * Encryption constants used for encrypted data
172
- */
173
125
  ENCRYPTION: exports.ENCRYPTION,
174
- /**
175
- * Voting constants used for homomorphic encryption voting
176
- */
177
126
  VOTING: voting_consts_1.VOTING,
178
- /**
179
- * Algorithm configuration string for keyring operations
180
- */
181
127
  KEYRING_ALGORITHM_CONFIGURATION: exports.KEYRING_ALGORITHM_CONFIGURATION,
182
- /**
183
- * Size of ECIES version field in bytes
184
- */
185
128
  ECIES_VERSION_SIZE: 1,
186
- /**
187
- * Size of ECIES cipher suite field in bytes
188
- */
189
129
  ECIES_CIPHER_SUITE_SIZE: 1,
190
- // Override specific ECIES constants for Node.js
191
130
  ECIES: {
192
- ...runtimeDefaults.ECIES,
193
- // Override public key length for compressed keys
131
+ ...ecies_lib_1.Constants.ECIES,
194
132
  PUBLIC_KEY_LENGTH: 33,
195
- // Override IV size for AES-GCM (standard is 12 bytes)
196
133
  IV_SIZE: 12,
197
- SINGLE: {
198
- ...runtimeDefaults.ECIES.SINGLE,
134
+ WITH_LENGTH: {
135
+ ...ecies_lib_1.Constants.ECIES.WITH_LENGTH,
199
136
  FIXED_OVERHEAD_SIZE: 72,
200
137
  },
201
- SIMPLE: {
202
- ...runtimeDefaults.ECIES.SIMPLE,
138
+ BASIC: {
139
+ ...ecies_lib_1.Constants.ECIES.BASIC,
203
140
  FIXED_OVERHEAD_SIZE: 64,
204
141
  },
205
142
  MULTIPLE: {
206
- ...runtimeDefaults.ECIES.MULTIPLE,
143
+ ...ecies_lib_1.Constants.ECIES.MULTIPLE,
207
144
  ENCRYPTED_KEY_SIZE: 60,
208
- // Keep MAX_DATA_SIZE aligned with base config (1MB guardrail)
209
- MAX_DATA_SIZE: runtimeDefaults.ECIES.MULTIPLE.MAX_DATA_SIZE,
145
+ MAX_DATA_SIZE: ecies_lib_1.Constants.ECIES.MULTIPLE.MAX_DATA_SIZE,
210
146
  },
211
147
  },
212
148
  });
@@ -234,7 +170,44 @@ if (exports.CHECKSUM.SHA3_BUFFER_LENGTH !== exports.CHECKSUM.SHA3_DEFAULT_HASH_B
234
170
  exports.CHECKSUM.SHA3_BUFFER_LENGTH !== exports.CHECKSUM.SHA3_DEFAULT_HASH_BITS / 8) {
235
171
  throw new Error(safeTranslate(i18n_1.NodeEciesStringKey.Error_InvalidChecksumConstants, 'Invalid checksum constants: SHA3_BUFFER_LENGTH must equal SHA3_DEFAULT_HASH_BITS / 8'));
236
172
  }
237
- if (ecies_lib_1.OBJECT_ID_LENGTH !== 12) {
238
- console.warn('ObjectID length may have changed, breaking encryption', ecies_lib_1.OBJECT_ID_LENGTH);
173
+ /**
174
+ * Creates a node-specific runtime configuration with overrides.
175
+ * Uses Constants as the base and applies node-specific defaults.
176
+ */
177
+ function createNodeRuntimeConfiguration(overrides) {
178
+ return (0, ecies_lib_1.registerRuntimeConfiguration)(Symbol('node-runtime-config'), { ...overrides }, { baseKey: exports.NODE_RUNTIME_CONFIGURATION_KEY });
179
+ }
180
+ function registerNodeRuntimeConfiguration(keyOrOverrides, overrides) {
181
+ let result;
182
+ // Check if first argument is overrides (an object that's not a symbol or string)
183
+ if (typeof keyOrOverrides === 'object' &&
184
+ keyOrOverrides !== null &&
185
+ !(typeof keyOrOverrides === 'symbol')) {
186
+ // Called with just overrides - generate a unique key
187
+ result = (0, ecies_lib_1.registerRuntimeConfiguration)(Symbol('node-runtime-config'), keyOrOverrides, {
188
+ baseKey: exports.NODE_RUNTIME_CONFIGURATION_KEY,
189
+ });
190
+ }
191
+ else {
192
+ // Called with key and optional overrides
193
+ result = (0, ecies_lib_1.registerRuntimeConfiguration)(keyOrOverrides, overrides, {
194
+ baseKey: exports.NODE_RUNTIME_CONFIGURATION_KEY,
195
+ });
196
+ }
197
+ // Update the runtimeDefaults so that getNodeRuntimeConfiguration() returns
198
+ // the most recently registered configuration
199
+ runtimeDefaults = result;
200
+ return result;
201
+ }
202
+ // Register the default node configuration in the registry
203
+ let runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, exports.Constants);
204
+ function ensureNodeRuntimeConfiguration() {
205
+ if (!runtimeDefaults || !runtimeDefaults.idProvider) {
206
+ runtimeDefaults = (0, ecies_lib_1.registerRuntimeConfiguration)(exports.NODE_RUNTIME_CONFIGURATION_KEY, exports.Constants);
207
+ }
208
+ }
209
+ function getNodeRuntimeConfiguration() {
210
+ ensureNodeRuntimeConfiguration();
211
+ return runtimeDefaults;
239
212
  }
240
213
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":";;;AAkGA,wEAOC;AAED,kEAGC;AAED,4EAuBC;AAoLQ,0DAAuB;AAAE,oDAAoB;AArTtD,0DAIoC;AACpC,mDAA+C;AAC/C,qDAAoD;AAEpD,kEAA2F;AAC3F,iCAIgB;AAMhB,8DAAoD;AAGpD;;;GAGG;AACH,SAAS,uBAAuB,CAAC,MAAkB;IACjD,0DAA0D;IAC1D,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,KAAc,EAAE,EAAE,CAChD,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpC,OAAO,IAAA,qBAAU,EAAC,IAAA,gBAAM,EAAC,IAAI,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB;IAC3B,MAAM,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC,KAAK,CAAC;IAChC,IAAI,CAAC,KAAK;QAAE,OAAO,mBAAmB,CAAC;IAEvC,+DAA+D;IAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACU,QAAA,8BAA8B,GAAG,MAAM,CAAC,GAAG,CACtD,qCAAqC,CACtC,CAAC;AAcF;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,4BAAgB,EAAE,CAAC;AAEtC,QAAA,uBAAuB,GAAyB,MAAM,CAAC,MAAM,CAAC;IACzE,MAAM,EAAE;QACN,SAAS,EAAE,QAAQ;KACpB;IACD,sGAAsG;IACtG,UAAU,EAAE,mBAAmB;CAChC,CAAC,CAAC;AAEH,IAAI,eAAe,GAA6B,IAAA,wCAA4B,EAC1E,sCAA8B,EAC9B,+BAAuB,CACxB,CAAC;AAEF;;;GAGG;AACH,SAAgB,8BAA8B;IAC5C,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;QACpD,eAAe,GAAG,IAAA,wCAA4B,EAC5C,sCAA8B,EAC9B,+BAAuB,CACxB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAgB,2BAA2B;IACzC,8BAA8B,EAAE,CAAC;IACjC,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,SAAgB,gCAAgC,CAC9C,iBAAmE,EACnE,OAA4D;IAE5D,oDAAoD;IACpD,gGAAgG;IAChG,eAAe,GAAG,IAAA,wCAA4B,EAC5C,sCAA8B,EAC9B,iBAAiB,EACjB,OAAO,CACR,CAAC;IAEF,qEAAqE;IACrE,2EAA2E;IAC3E,qFAAqF;IACrF,kEAAkE;IAElE,kFAAkF;IAClF,gFAAgF;IAChF,6DAA6D;IAC7D,iEAAiE;IAEjE,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,0CAA0C;AAC7B,QAAA,QAAQ,GAAoB,eAAe,CAAC,QAAQ,CAAC;AAErD,QAAA,OAAO,GAAmB,MAAM,CAAC,MAAM,CAAC;IACnD,SAAS,EAAE,KAAc;IACzB,QAAQ,EAAE,GAAY;IACtB,IAAI,EAAE,KAAc;CACZ,CAAC,CAAC;AAEC,QAAA,MAAM,GAAkB,eAAe,CAAC,MAAM,CAAC;AAE/C,QAAA,eAAe,GAAkB,MAAM,CAAC,MAAM,CAAC;IAC1D,4GAA4G;IAC5G,CAAC,kCAAqB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QACtD,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,mEAAmE;IACnE,CAAC,kCAAqB,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QACnD,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,0DAA0D;IAC1D,CAAC,kCAAqB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAC/C,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,IAAI,EAAE,wCAAwC;QAC1D,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,CAAC,kCAAqB,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAChD,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,CAAC,kCAAqB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,MAAM;QAClB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,CAAC,kCAAqB,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,SAAS,EAAE,EAAE;QACb,UAAU,EAAE,OAAO;QACnB,SAAS,EAAE,QAAQ;QACnB,SAAS,EAAE,EAAE;KACd,CAAC;CACM,CAAC,CAAC;AAEC,QAAA,WAAW,GAAsB,MAAM,CAAC,MAAM,CAAC;IAC1D,SAAS,EAAE,cAAM,CAAC,UAAU,EAAE,gCAAgC;IAC9D,OAAO,EAAE,EAAW;IACpB,eAAe,EAAE,EAAW;IAC5B,cAAc,EAAE,MAAe,EAAE,yCAAyC;CAClE,CAAC,CAAC;AAEC,QAAA,+BAA+B,GAC1C,GAAG,eAAO,CAAC,SAAS,IAAI,eAAO,CAAC,QAAQ,IAAI,eAAO,CAAC,IAAI,EAAoB,CAAC;AAE/E;;GAEG;AACU,QAAA,UAAU,GAAsB,MAAM,CAAC,MAAM,CAAC;IACzD,oBAAoB,EAAE,CAAU;IAChC,iBAAiB,EAAE,mBAAmB,CAAC,UAAU;CACzC,CAAC,CAAC;AAEC,QAAA,SAAS,GAAe,MAAM,CAAC,MAAM,CAAC;IACjD,GAAG,eAAe;IAClB,wCAAwC;IACxC;;OAEG;IACH,MAAM,EAAE,cAAM;IACd;;OAEG;IACH,eAAe,EAAE,uBAAe;IAChC;;OAEG;IACH,WAAW,EAAE,mBAAW;IACxB;;OAEG;IACH,QAAQ,EAAE,gBAAQ;IAClB;;OAEG;IACH,OAAO,EAAE,eAAO;IAChB;;OAEG;IACH,UAAU,EAAE,kBAAU;IACtB;;OAEG;IACH,MAAM,EAAE,sBAAM;IACd;;OAEG;IACH,+BAA+B,EAAE,uCAA+B;IAChE;;OAEG;IACH,kBAAkB,EAAE,CAAC;IACrB;;OAEG;IACH,uBAAuB,EAAE,CAAC;IAC1B,gDAAgD;IAChD,KAAK,EAAE;QACL,GAAG,eAAe,CAAC,KAAK;QACxB,iDAAiD;QACjD,iBAAiB,EAAE,EAAE;QACrB,sDAAsD;QACtD,OAAO,EAAE,EAAE;QACX,MAAM,EAAE;YACN,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM;YAC/B,mBAAmB,EAAE,EAAE;SACxB;QACD,MAAM,EAAE;YACN,GAAG,eAAe,CAAC,KAAK,CAAC,MAAM;YAC/B,mBAAmB,EAAE,EAAE;SACxB;QACD,QAAQ,EAAE;YACR,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ;YACjC,kBAAkB,EAAE,EAAE;YACtB,8DAA8D;YAC9D,aAAa,EAAE,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,aAAa;SAC5D;KACF;CACO,CAAC,CAAC;AAEZ;;;;;;;;GAQG;AACH,SAAS,aAAa,CAAC,GAAuB,EAAE,QAAgB;IAC9D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAA,6BAAsB,GAAE,CAAC;QACxC,OAAO,MAAM,CAAC,SAAS,CAAC,2BAAoB,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,2DAA2D;AAC3D,+EAA+E;AAC/E,IACE,gBAAQ,CAAC,kBAAkB,KAAK,gBAAQ,CAAC,sBAAsB,GAAG,CAAC;IACnE,gBAAQ,CAAC,kBAAkB,KAAK,gBAAQ,CAAC,sBAAsB,GAAG,CAAC,EACnE,CAAC;IACD,MAAM,IAAI,KAAK,CACb,aAAa,CACX,yBAAkB,CAAC,8BAA8B,EACjD,sFAAsF,CACvF,CACF,CAAC;AACJ,CAAC;AAED,IAAI,4BAAgB,KAAK,EAAE,EAAE,CAAC;IAC5B,OAAO,CAAC,IAAI,CACV,uDAAuD,EACvD,4BAAgB,CACjB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-node-ecies-lib/src/constants.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Unified error class for all crypto operations.
3
+ * Provides consistent error handling across the library.
4
+ */
1
5
  export declare class CryptoError extends Error {
2
6
  readonly code: string;
3
7
  readonly metadata?: Record<string, unknown> | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"crypto-error.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/core/errors/crypto-error.ts"],"names":[],"mappings":"AAAA,qBAAa,WAAY,SAAQ,KAAK;aAElB,IAAI,EAAE,MAAM;aAEZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFlC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKrD"}
1
+ {"version":3,"file":"crypto-error.d.ts","sourceRoot":"","sources":["../../../../../../packages/digitaldefiance-node-ecies-lib/src/core/errors/crypto-error.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,qBAAa,WAAY,SAAQ,KAAK;aAElB,IAAI,EAAE,MAAM;aAEZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;gBAFlC,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,YAAA;CAKrD"}