@digitaldefiance/ecies-lib 3.0.8 → 3.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. package/README.md +4 -0
  2. package/package.json +4 -3
  3. package/src/builders/ecies-builder.js +5 -9
  4. package/src/builders/ecies-builder.js.map +1 -1
  5. package/src/builders/index.js +2 -5
  6. package/src/builders/index.js.map +1 -1
  7. package/src/builders/member-builder.js +12 -16
  8. package/src/builders/member-builder.js.map +1 -1
  9. package/src/constants.d.ts +14 -0
  10. package/src/constants.d.ts.map +1 -1
  11. package/src/constants.js +150 -74
  12. package/src/constants.js.map +1 -1
  13. package/src/core/errors/crypto-error.js +10 -14
  14. package/src/core/errors/crypto-error.js.map +1 -1
  15. package/src/core/index.js +2 -5
  16. package/src/core/index.js.map +1 -1
  17. package/src/core/types/result.js +1 -5
  18. package/src/core/types/result.js.map +1 -1
  19. package/src/email-string.js +8 -13
  20. package/src/email-string.js.map +1 -1
  21. package/src/enumerations/disposed-error-type.d.ts +12 -0
  22. package/src/enumerations/disposed-error-type.d.ts.map +1 -0
  23. package/src/enumerations/disposed-error-type.js +13 -0
  24. package/src/enumerations/disposed-error-type.js.map +1 -0
  25. package/src/enumerations/ecies-encryption-type.js +20 -27
  26. package/src/enumerations/ecies-encryption-type.js.map +1 -1
  27. package/src/enumerations/ecies-error-type.js +2 -5
  28. package/src/enumerations/ecies-error-type.js.map +1 -1
  29. package/src/enumerations/ecies-string-key.d.ts +19 -1
  30. package/src/enumerations/ecies-string-key.d.ts.map +1 -1
  31. package/src/enumerations/ecies-string-key.js +21 -5
  32. package/src/enumerations/ecies-string-key.js.map +1 -1
  33. package/src/enumerations/guid-brand-type.d.ts +27 -0
  34. package/src/enumerations/guid-brand-type.d.ts.map +1 -0
  35. package/src/enumerations/guid-brand-type.js +28 -0
  36. package/src/enumerations/guid-brand-type.js.map +1 -0
  37. package/src/enumerations/guid-error-type.d.ts +7 -0
  38. package/src/enumerations/guid-error-type.d.ts.map +1 -0
  39. package/src/enumerations/guid-error-type.js +8 -0
  40. package/src/enumerations/guid-error-type.js.map +1 -0
  41. package/src/enumerations/id-provider-error-type.d.ts +43 -0
  42. package/src/enumerations/id-provider-error-type.d.ts.map +1 -0
  43. package/src/enumerations/id-provider-error-type.js +44 -0
  44. package/src/enumerations/id-provider-error-type.js.map +1 -0
  45. package/src/enumerations/index.d.ts +3 -0
  46. package/src/enumerations/index.d.ts.map +1 -1
  47. package/src/enumerations/index.js +15 -15
  48. package/src/enumerations/index.js.map +1 -1
  49. package/src/enumerations/invalid-email-type.js +2 -5
  50. package/src/enumerations/invalid-email-type.js.map +1 -1
  51. package/src/enumerations/length-encoding-type.js +2 -5
  52. package/src/enumerations/length-encoding-type.js.map +1 -1
  53. package/src/enumerations/length-error-type.js +2 -5
  54. package/src/enumerations/length-error-type.js.map +1 -1
  55. package/src/enumerations/member-error-type.js +3 -6
  56. package/src/enumerations/member-error-type.js.map +1 -1
  57. package/src/enumerations/member-type.js +3 -6
  58. package/src/enumerations/member-type.js.map +1 -1
  59. package/src/enumerations/password-login-error-type.js +2 -5
  60. package/src/enumerations/password-login-error-type.js.map +1 -1
  61. package/src/enumerations/pbkdf2-error-type.js +2 -5
  62. package/src/enumerations/pbkdf2-error-type.js.map +1 -1
  63. package/src/enumerations/pbkdf2-profile.js +2 -5
  64. package/src/enumerations/pbkdf2-profile.js.map +1 -1
  65. package/src/enumerations/secure-storage-error-type.js +2 -5
  66. package/src/enumerations/secure-storage-error-type.js.map +1 -1
  67. package/src/errors/disposed.d.ts +20 -2
  68. package/src/errors/disposed.d.ts.map +1 -1
  69. package/src/errors/disposed.js +24 -17
  70. package/src/errors/disposed.js.map +1 -1
  71. package/src/errors/ecies.d.ts +46 -1
  72. package/src/errors/ecies.d.ts.map +1 -1
  73. package/src/errors/ecies.js +65 -10
  74. package/src/errors/ecies.js.map +1 -1
  75. package/src/errors/guid.d.ts +44 -0
  76. package/src/errors/guid.d.ts.map +1 -0
  77. package/src/errors/guid.js +81 -0
  78. package/src/errors/guid.js.map +1 -0
  79. package/src/errors/id-provider.d.ts +23 -0
  80. package/src/errors/id-provider.d.ts.map +1 -0
  81. package/src/errors/id-provider.js +29 -0
  82. package/src/errors/id-provider.js.map +1 -0
  83. package/src/errors/index.d.ts +3 -0
  84. package/src/errors/index.d.ts.map +1 -1
  85. package/src/errors/index.js +9 -10
  86. package/src/errors/index.js.map +1 -1
  87. package/src/errors/invalid-email.js +5 -9
  88. package/src/errors/invalid-email.js.map +1 -1
  89. package/src/errors/length.js +5 -9
  90. package/src/errors/length.js.map +1 -1
  91. package/src/errors/member.js +5 -9
  92. package/src/errors/member.js.map +1 -1
  93. package/src/errors/pbkdf2.js +5 -9
  94. package/src/errors/pbkdf2.js.map +1 -1
  95. package/src/errors/secure-storage.js +6 -10
  96. package/src/errors/secure-storage.js.map +1 -1
  97. package/src/errors/simple-ecies.js +6 -10
  98. package/src/errors/simple-ecies.js.map +1 -1
  99. package/src/errors/simple-test-error.js +1 -5
  100. package/src/errors/simple-test-error.js.map +1 -1
  101. package/src/i18n-setup.js +29 -37
  102. package/src/i18n-setup.js.map +1 -1
  103. package/src/index.d.ts +10 -0
  104. package/src/index.d.ts.map +1 -1
  105. package/src/index.js +44 -57
  106. package/src/index.js.map +1 -1
  107. package/src/interfaces/checksum-config.js +1 -2
  108. package/src/interfaces/checksum-consts.js +1 -2
  109. package/src/interfaces/configuration-provenance.d.ts +51 -0
  110. package/src/interfaces/configuration-provenance.d.ts.map +1 -0
  111. package/src/interfaces/configuration-provenance.js +23 -0
  112. package/src/interfaces/configuration-provenance.js.map +1 -0
  113. package/src/interfaces/constants.d.ts +27 -1
  114. package/src/interfaces/constants.d.ts.map +1 -1
  115. package/src/interfaces/constants.js +1 -2
  116. package/src/interfaces/ecies-config.js +1 -2
  117. package/src/interfaces/ecies-consts.js +1 -2
  118. package/src/interfaces/ecies-file-service.js +1 -2
  119. package/src/interfaces/encrypted-chunk.js +1 -4
  120. package/src/interfaces/encrypted-chunk.js.map +1 -1
  121. package/src/interfaces/encryption-state.js +1 -4
  122. package/src/interfaces/encryption-state.js.map +1 -1
  123. package/src/interfaces/frontend-member-operational.js +1 -2
  124. package/src/interfaces/guid.d.ts +78 -0
  125. package/src/interfaces/guid.d.ts.map +1 -0
  126. package/src/interfaces/guid.js +2 -0
  127. package/src/interfaces/guid.js.map +1 -0
  128. package/src/interfaces/id-provider.d.ts +83 -0
  129. package/src/interfaces/id-provider.d.ts.map +1 -0
  130. package/src/interfaces/id-provider.js +35 -0
  131. package/src/interfaces/id-provider.js.map +1 -0
  132. package/src/interfaces/index.d.ts +1 -0
  133. package/src/interfaces/index.d.ts.map +1 -1
  134. package/src/interfaces/index.js +13 -15
  135. package/src/interfaces/index.js.map +1 -1
  136. package/src/interfaces/invariant.d.ts +46 -0
  137. package/src/interfaces/invariant.d.ts.map +1 -0
  138. package/src/interfaces/invariant.js +18 -0
  139. package/src/interfaces/invariant.js.map +1 -0
  140. package/src/interfaces/library-error.js +1 -2
  141. package/src/interfaces/member-storage.js +1 -2
  142. package/src/interfaces/member-with-mnemonic.js +1 -2
  143. package/src/interfaces/multi-recipient-chunk.d.ts +36 -12
  144. package/src/interfaces/multi-recipient-chunk.d.ts.map +1 -1
  145. package/src/interfaces/multi-recipient-chunk.js +36 -14
  146. package/src/interfaces/multi-recipient-chunk.js.map +1 -1
  147. package/src/interfaces/pbkdf2-config.js +1 -2
  148. package/src/interfaces/pbkdf2-consts.js +1 -2
  149. package/src/interfaces/pbkdf2-result.js +1 -2
  150. package/src/interfaces/stream-config.js +1 -4
  151. package/src/interfaces/stream-config.js.map +1 -1
  152. package/src/interfaces/stream-header.js +1 -4
  153. package/src/interfaces/stream-header.js.map +1 -1
  154. package/src/interfaces/stream-progress.js +1 -2
  155. package/src/lib/crypto-container.js +9 -13
  156. package/src/lib/crypto-container.js.map +1 -1
  157. package/src/lib/guid.d.ts +344 -0
  158. package/src/lib/guid.d.ts.map +1 -0
  159. package/src/lib/guid.js +914 -0
  160. package/src/lib/guid.js.map +1 -0
  161. package/src/lib/id-providers/custom-provider.d.ts +69 -0
  162. package/src/lib/id-providers/custom-provider.d.ts.map +1 -0
  163. package/src/lib/id-providers/custom-provider.js +128 -0
  164. package/src/lib/id-providers/custom-provider.js.map +1 -0
  165. package/src/lib/id-providers/guidv4-provider.d.ts +46 -0
  166. package/src/lib/id-providers/guidv4-provider.d.ts.map +1 -0
  167. package/src/lib/id-providers/guidv4-provider.js +105 -0
  168. package/src/lib/id-providers/guidv4-provider.js.map +1 -0
  169. package/src/lib/id-providers/index.d.ts +30 -0
  170. package/src/lib/id-providers/index.d.ts.map +1 -0
  171. package/src/lib/id-providers/index.js +29 -0
  172. package/src/lib/id-providers/index.js.map +1 -0
  173. package/src/lib/id-providers/objectid-provider.d.ts +33 -0
  174. package/src/lib/id-providers/objectid-provider.d.ts.map +1 -0
  175. package/src/lib/id-providers/objectid-provider.js +79 -0
  176. package/src/lib/id-providers/objectid-provider.js.map +1 -0
  177. package/src/lib/id-providers/uuid-provider.d.ts +42 -0
  178. package/src/lib/id-providers/uuid-provider.d.ts.map +1 -0
  179. package/src/lib/id-providers/uuid-provider.js +96 -0
  180. package/src/lib/id-providers/uuid-provider.js.map +1 -0
  181. package/src/lib/index.d.ts +1 -0
  182. package/src/lib/index.d.ts.map +1 -1
  183. package/src/lib/index.js +2 -4
  184. package/src/lib/index.js.map +1 -1
  185. package/src/lib/invariant-validator.d.ts +59 -0
  186. package/src/lib/invariant-validator.d.ts.map +1 -0
  187. package/src/lib/invariant-validator.js +97 -0
  188. package/src/lib/invariant-validator.js.map +1 -0
  189. package/src/lib/invariants/encryption-algorithm-consistency.d.ts +17 -0
  190. package/src/lib/invariants/encryption-algorithm-consistency.d.ts.map +1 -0
  191. package/src/lib/invariants/encryption-algorithm-consistency.js +49 -0
  192. package/src/lib/invariants/encryption-algorithm-consistency.js.map +1 -0
  193. package/src/lib/invariants/index.d.ts +4 -0
  194. package/src/lib/invariants/index.d.ts.map +1 -0
  195. package/src/lib/invariants/index.js +4 -0
  196. package/src/lib/invariants/index.js.map +1 -0
  197. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts +16 -0
  198. package/src/lib/invariants/pbkdf2-profiles-validity.d.ts.map +1 -0
  199. package/src/lib/invariants/pbkdf2-profiles-validity.js +58 -0
  200. package/src/lib/invariants/pbkdf2-profiles-validity.js.map +1 -0
  201. package/src/lib/invariants/recipient-id-consistency.d.ts +18 -0
  202. package/src/lib/invariants/recipient-id-consistency.d.ts.map +1 -0
  203. package/src/lib/invariants/recipient-id-consistency.js +31 -0
  204. package/src/lib/invariants/recipient-id-consistency.js.map +1 -0
  205. package/src/member.js +43 -48
  206. package/src/member.js.map +1 -1
  207. package/src/pbkdf2-profiles.js +1 -2
  208. package/src/phone-number.js +7 -11
  209. package/src/phone-number.js.map +1 -1
  210. package/src/regexes.js +3 -6
  211. package/src/regexes.js.map +1 -1
  212. package/src/secure-buffer.d.ts +17 -1
  213. package/src/secure-buffer.d.ts.map +1 -1
  214. package/src/secure-buffer.js +40 -22
  215. package/src/secure-buffer.js.map +1 -1
  216. package/src/secure-string.js +20 -24
  217. package/src/secure-string.js.map +1 -1
  218. package/src/services/aes-gcm.js +21 -25
  219. package/src/services/aes-gcm.js.map +1 -1
  220. package/src/services/chunk-processor.js +32 -36
  221. package/src/services/chunk-processor.js.map +1 -1
  222. package/src/services/ecies/crypto-core.js +33 -37
  223. package/src/services/ecies/crypto-core.js.map +1 -1
  224. package/src/services/ecies/example.js +37 -44
  225. package/src/services/ecies/example.js.map +1 -1
  226. package/src/services/ecies/file.js +1 -5
  227. package/src/services/ecies/file.js.map +1 -1
  228. package/src/services/ecies/index.js +10 -15
  229. package/src/services/ecies/index.js.map +1 -1
  230. package/src/services/ecies/integration.js +23 -28
  231. package/src/services/ecies/integration.js.map +1 -1
  232. package/src/services/ecies/interfaces.js +1 -2
  233. package/src/services/ecies/interfaces.js.map +1 -1
  234. package/src/services/ecies/manual-test.js +26 -34
  235. package/src/services/ecies/manual-test.js.map +1 -1
  236. package/src/services/ecies/multi-recipient.js +47 -51
  237. package/src/services/ecies/multi-recipient.js.map +1 -1
  238. package/src/services/ecies/service.js +27 -31
  239. package/src/services/ecies/service.js.map +1 -1
  240. package/src/services/ecies/signature.js +9 -13
  241. package/src/services/ecies/signature.js.map +1 -1
  242. package/src/services/ecies/single-recipient.js +42 -46
  243. package/src/services/ecies/single-recipient.js.map +1 -1
  244. package/src/services/encryption-stream.d.ts +3 -1
  245. package/src/services/encryption-stream.d.ts.map +1 -1
  246. package/src/services/encryption-stream.js +46 -48
  247. package/src/services/encryption-stream.js.map +1 -1
  248. package/src/services/index.js +5 -8
  249. package/src/services/index.js.map +1 -1
  250. package/src/services/multi-recipient-processor.d.ts +12 -2
  251. package/src/services/multi-recipient-processor.d.ts.map +1 -1
  252. package/src/services/multi-recipient-processor.js +65 -56
  253. package/src/services/multi-recipient-processor.js.map +1 -1
  254. package/src/services/password-login.js +33 -37
  255. package/src/services/password-login.js.map +1 -1
  256. package/src/services/pbkdf2.js +8 -12
  257. package/src/services/pbkdf2.js.map +1 -1
  258. package/src/services/progress-tracker.js +5 -9
  259. package/src/services/progress-tracker.js.map +1 -1
  260. package/src/services/resumable-encryption.js +24 -28
  261. package/src/services/resumable-encryption.js.map +1 -1
  262. package/src/services/xor.js +1 -5
  263. package/src/services/xor.js.map +1 -1
  264. package/src/test-mocks/index.js +1 -4
  265. package/src/test-mocks/index.js.map +1 -1
  266. package/src/test-mocks/mock-frontend-member.js +20 -24
  267. package/src/test-mocks/mock-frontend-member.js.map +1 -1
  268. package/src/testing.js +1 -4
  269. package/src/testing.js.map +1 -1
  270. package/src/translations/de.d.ts +2 -1
  271. package/src/translations/de.d.ts.map +1 -1
  272. package/src/translations/de.js +190 -170
  273. package/src/translations/de.js.map +1 -1
  274. package/src/translations/en-US.d.ts +2 -1
  275. package/src/translations/en-US.d.ts.map +1 -1
  276. package/src/translations/en-US.js +190 -170
  277. package/src/translations/en-US.js.map +1 -1
  278. package/src/translations/es.d.ts +2 -1
  279. package/src/translations/es.d.ts.map +1 -1
  280. package/src/translations/es.js +190 -170
  281. package/src/translations/es.js.map +1 -1
  282. package/src/translations/fr.d.ts +2 -1
  283. package/src/translations/fr.d.ts.map +1 -1
  284. package/src/translations/fr.js +190 -170
  285. package/src/translations/fr.js.map +1 -1
  286. package/src/translations/ja.d.ts +2 -1
  287. package/src/translations/ja.d.ts.map +1 -1
  288. package/src/translations/ja.js +189 -170
  289. package/src/translations/ja.js.map +1 -1
  290. package/src/translations/uk.d.ts +2 -1
  291. package/src/translations/uk.d.ts.map +1 -1
  292. package/src/translations/uk.js +192 -170
  293. package/src/translations/uk.js.map +1 -1
  294. package/src/translations/zh-cn.d.ts +2 -1
  295. package/src/translations/zh-cn.d.ts.map +1 -1
  296. package/src/translations/zh-cn.js +189 -170
  297. package/src/translations/zh-cn.js.map +1 -1
  298. package/src/types/deep-partial.js +1 -2
  299. package/src/types.d.ts +31 -0
  300. package/src/types.d.ts.map +1 -1
  301. package/src/types.js +1 -2
  302. package/src/utils.js +59 -77
  303. package/src/utils.js.map +1 -1
package/README.md CHANGED
@@ -712,6 +712,10 @@ const passwordLogin = new PasswordLoginService(ecies, pbkdf2);
712
712
 
713
713
  ## ChangeLog
714
714
 
715
+ ### v3.7.0
716
+
717
+
718
+
715
719
  ### v3.0.8
716
720
 
717
721
  - Update i18n
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@digitaldefiance/ecies-lib",
3
- "version": "3.0.8",
3
+ "version": "3.7.2",
4
4
  "description": "Digital Defiance ECIES Library",
5
5
  "main": "src/index.js",
6
6
  "types": "src/index.d.ts",
@@ -45,7 +45,7 @@
45
45
  "license": "MIT",
46
46
  "packageManager": "yarn@4.11.0",
47
47
  "dependencies": {
48
- "@digitaldefiance/i18n-lib": "3.6.4",
48
+ "@digitaldefiance/i18n-lib": "3.7.2",
49
49
  "@ethereumjs/wallet": "^10.0.0",
50
50
  "@noble/curves": "^2.0.1",
51
51
  "@noble/hashes": "^2.0.1",
@@ -56,5 +56,6 @@
56
56
  "devDependencies": {
57
57
  "@digitaldefiance/express-suite-test-utils": "1.0.10"
58
58
  },
59
- "type": "commonjs"
59
+ "module": "./src/index.js",
60
+ "type": "module"
60
61
  }
@@ -1,12 +1,9 @@
1
- "use strict";
2
1
  /**
3
2
  * Fluent builder for ECIESService
4
3
  */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ECIESBuilder = void 0;
7
- const constants_1 = require("../constants");
8
- const service_1 = require("../services/ecies/service");
9
- class ECIESBuilder {
4
+ import { Constants } from '../constants';
5
+ import { ECIESService } from '../services/ecies/service';
6
+ export class ECIESBuilder {
10
7
  serviceConfig = {};
11
8
  eciesConsts = {};
12
9
  i18n;
@@ -26,9 +23,8 @@ class ECIESBuilder {
26
23
  return this;
27
24
  }
28
25
  build() {
29
- const finalConstants = { ...constants_1.Constants.ECIES, ...this.eciesConsts };
30
- return new service_1.ECIESService(this.serviceConfig, finalConstants);
26
+ const finalConstants = { ...Constants.ECIES, ...this.eciesConsts };
27
+ return new ECIESService(this.serviceConfig, finalConstants);
31
28
  }
32
29
  }
33
- exports.ECIESBuilder = ECIESBuilder;
34
30
  //# sourceMappingURL=ecies-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ecies-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAKH,4CAAyC;AACzC,uDAAyD;AAEzD,MAAa,YAAY;IACf,aAAa,GAA0B,EAAE,CAAC;IAC1C,WAAW,GAA6B,EAAE,CAAC;IAC3C,IAAI,CAA4B;IAExC,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,QAAQ,CAAC,MAAgC;QACvC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,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,sBAAY,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;CACF;AA5BD,oCA4BC"}
1
+ {"version":3,"file":"ecies-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/ecies-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,MAAM,OAAO,YAAY;IACf,aAAa,GAA0B,EAAE,CAAC;IAC1C,WAAW,GAA6B,EAAE,CAAC;IAC3C,IAAI,CAA4B;IAExC,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,QAAQ,CAAC,MAAgC;QACvC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK;QACH,MAAM,cAAc,GAAG,EAAE,GAAG,SAAS,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACnE,OAAO,IAAI,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;IAC9D,CAAC;CACF"}
@@ -1,9 +1,6 @@
1
- "use strict";
2
1
  /**
3
2
  * Builder exports for v2 architecture
4
3
  */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const tslib_1 = require("tslib");
7
- tslib_1.__exportStar(require("./ecies-builder"), exports);
8
- tslib_1.__exportStar(require("./member-builder"), exports);
4
+ export * from './ecies-builder';
5
+ export * from './member-builder';
9
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,0DAAgC;AAChC,2DAAiC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
@@ -1,14 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * Fluent builder for Member
4
3
  */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.MemberBuilder = void 0;
7
- const email_string_1 = require("../email-string");
8
- const member_1 = require("../member");
9
- const i18n_setup_1 = require("../i18n-setup");
10
- const enumerations_1 = require("../enumerations");
11
- class MemberBuilder {
4
+ import { EmailString } from '../email-string';
5
+ import { Member } from '../member';
6
+ import { EciesComponentId, getEciesI18nEngine } from '../i18n-setup';
7
+ import { EciesStringKey } from '../enumerations';
8
+ export class MemberBuilder {
12
9
  eciesService;
13
10
  type;
14
11
  name;
@@ -31,7 +28,7 @@ class MemberBuilder {
31
28
  return this;
32
29
  }
33
30
  withEmail(email) {
34
- this.email = typeof email === 'string' ? new email_string_1.EmailString(email) : email;
31
+ this.email = typeof email === 'string' ? new EmailString(email) : email;
35
32
  return this;
36
33
  }
37
34
  withMnemonic(mnemonic) {
@@ -44,22 +41,21 @@ class MemberBuilder {
44
41
  }
45
42
  generateMnemonic() {
46
43
  if (!this.eciesService) {
47
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
48
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_Builder_ECIESServiceMustBeSetBeforeGeneratingMnemonic));
44
+ const engine = getEciesI18nEngine();
45
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Builder_ECIESServiceMustBeSetBeforeGeneratingMnemonic));
49
46
  }
50
47
  this.mnemonic = this.eciesService.generateNewMnemonic();
51
48
  return this;
52
49
  }
53
50
  build() {
54
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
51
+ const engine = getEciesI18nEngine();
55
52
  if (!this.eciesService) {
56
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_Builder_ECIESServiceIsRequired));
53
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Builder_ECIESServiceIsRequired));
57
54
  }
58
55
  if (!this.type || !this.name || !this.email) {
59
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_Builder_TypeNameAndEmailAreRequired));
56
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_Builder_TypeNameAndEmailAreRequired));
60
57
  }
61
- return member_1.Member.newMember(this.eciesService, this.type, this.name, this.email, this.mnemonic, this.createdBy);
58
+ return Member.newMember(this.eciesService, this.type, this.name, this.email, this.mnemonic, this.createdBy);
62
59
  }
63
60
  }
64
- exports.MemberBuilder = MemberBuilder;
65
61
  //# sourceMappingURL=member-builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"member-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAGH,kDAA8C;AAC9C,sCAAmC;AAKnC,8CAAqE;AACrE,kDAAiD;AAEjD,MAAa,aAAa;IAChB,YAAY,CAAgB;IAC5B,IAAI,CAAc;IAClB,IAAI,CAAU;IACd,KAAK,CAAe;IACpB,QAAQ,CAAgB;IACxB,SAAS,CAAY;IAE7B,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,0BAAW,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,SAAmB;QAC/B,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,+BAAkB,GAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,6BAAgB,EAAE,6BAAc,CAAC,2DAA2D,CAAC,CAAC,CAAC;QAClI,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,+BAAkB,GAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,6BAAgB,EAAE,6BAAc,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,6BAAgB,EAAE,6BAAc,CAAC,yCAAyC,CAAC,CAAC,CAAC;QAChH,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;CACF;AArED,sCAqEC"}
1
+ {"version":3,"file":"member-builder.js","sourceRoot":"","sources":["../../../../../packages/digitaldefiance-ecies-lib/src/builders/member-builder.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAKnC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD,MAAM,OAAO,aAAa;IAChB,YAAY,CAAgB;IAC5B,IAAI,CAAc;IAClB,IAAI,CAAU;IACd,KAAK,CAAe;IACpB,QAAQ,CAAgB;IACxB,SAAS,CAAY;IAE7B,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,WAAW,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,SAAmB;QAC/B,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,kBAAkB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC,2DAA2D,CAAC,CAAC,CAAC;QAClI,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,kBAAkB,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC3G,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC,yCAAyC,CAAC,CAAC,CAAC;QAChH,CAAC;QAED,OAAO,MAAM,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;CACF"}
@@ -4,6 +4,7 @@ import { DeepPartial } from './types/deep-partial';
4
4
  import { IECIESConstants } from './interfaces/ecies-consts';
5
5
  import { IPBkdf2Consts } from './interfaces/pbkdf2-consts';
6
6
  import { Pbkdf2Profiles } from './pbkdf2-profiles';
7
+ import type { IConfigurationProvenance } from './interfaces/configuration-provenance';
7
8
  export declare const UINT8_SIZE: number;
8
9
  export declare const UINT16_SIZE: number;
9
10
  export declare const UINT16_MAX: number;
@@ -29,9 +30,22 @@ export declare class ConstantsRegistry {
29
30
  static listKeys(): ConfigurationKey[];
30
31
  static has(key: ConfigurationKey): boolean;
31
32
  static get(key?: ConfigurationKey): IConstants;
33
+ /**
34
+ * Get provenance information for a configuration
35
+ */
36
+ static getProvenance(key?: ConfigurationKey): IConfigurationProvenance | undefined;
37
+ /**
38
+ * List all configurations with their provenance
39
+ */
40
+ static listWithProvenance(): Array<{
41
+ key: ConfigurationKey;
42
+ config: IConstants;
43
+ provenance?: IConfigurationProvenance;
44
+ }>;
32
45
  static create(overrides?: DeepPartial<IConstants>, baseKey?: ConfigurationKey): IConstants;
33
46
  static register(key: ConfigurationKey, configOrOverrides?: DeepPartial<IConstants> | IConstants, options?: {
34
47
  baseKey?: ConfigurationKey;
48
+ description?: string;
35
49
  }): IConstants;
36
50
  static unregister(key: ConfigurationKey): boolean;
37
51
  static clear(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/constants.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC3D,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGnD,eAAO,MAAM,UAAU,EAAE,MAAmB,CAAC;AAC7C,eAAO,MAAM,WAAW,EAAE,MAAmB,CAAC;AAC9C,eAAO,MAAM,UAAU,EAAE,MAAuB,CAAC;AACjD,eAAO,MAAM,WAAW,EAAE,MAAmB,CAAC;AAC9C,eAAO,MAAM,UAAU,EAAE,MAA4B,CAAC;AACtD,eAAO,MAAM,WAAW,EAAE,MAAmB,CAAC;AAC9C,eAAO,MAAM,UAAU,EAAE,MAAuC,CAAC;AACjE,eAAO,MAAM,gBAAgB,EAAE,MAAoB,CAAC;AASpD;;;;GAIG;AACH,eAAO,MAAM,QAAQ,EAAE,eAYZ,CAAC;AAEZ,eAAO,MAAM,MAAM,EAAE,aAQV,CAAC;AAEZ,eAAO,MAAM,eAAe,EAAE,cAmBnB,CAAC;AAyBZ,eAAO,MAAM,KAAK,EAAE,eAoElB,CAAC;AAEH,eAAO,MAAM,SAAS,EAAE,UAmCb,CAAC;AAEZ,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,MAAM,CAAC;AAsK/C,wBAAgB,0BAA0B,CACxC,SAAS,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,EACnC,IAAI,GAAE,UAAsB,GAC3B,UAAU,CAKZ;AAED,qBAAa,iBAAiB;IAC5B,gBAAuB,WAAW,mBAA6B;WAEjD,QAAQ,IAAI,gBAAgB,EAAE;WAI9B,GAAG,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO;WAInC,GAAG,CAAC,GAAG,GAAE,gBAA4C,GAAG,UAAU;WAOlE,MAAM,CAClB,SAAS,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,EACnC,OAAO,GAAE,gBAA4C,GACpD,UAAU;WAKC,QAAQ,CACpB,GAAG,EAAE,gBAAgB,EACrB,iBAAiB,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,UAAU,EACxD,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,gBAAgB,CAAA;KAAE,GACvC,UAAU;WAiBC,UAAU,CAAC,GAAG,EAAE,gBAAgB,GAAG,OAAO;WAO1C,KAAK,IAAI,IAAI;CAI5B;AAED,wBAAgB,uBAAuB,CACrC,GAAG,GAAE,gBAA4C,GAChD,UAAU,CAEZ;AAED,wBAAgB,4BAA4B,CAC1C,GAAG,EAAE,gBAAgB,EACrB,iBAAiB,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,UAAU,EACxD,OAAO,CAAC,EAAE;IAAE,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAAE,GACvC,UAAU,CAEZ;AAED,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,gBAAgB,GACpB,OAAO,CAET;AAED,wBAAgB,0BAA0B,IAAI,IAAI,CAEjD;AAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/constants.ts"],"names":[],"mappings":"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"}
package/src/constants.js CHANGED
@@ -1,33 +1,28 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MNEMONIC_REGEX = exports.PASSWORD_REGEX = exports.ConstantsRegistry = exports.Constants = exports.ECIES = exports.PBKDF2_PROFILES = exports.PBKDF2 = exports.CHECKSUM = exports.OBJECT_ID_LENGTH = exports.UINT64_MAX = exports.UINT64_SIZE = exports.UINT32_MAX = exports.UINT32_SIZE = exports.UINT16_MAX = exports.UINT16_SIZE = exports.UINT8_SIZE = void 0;
4
- exports.createRuntimeConfiguration = createRuntimeConfiguration;
5
- exports.getRuntimeConfiguration = getRuntimeConfiguration;
6
- exports.registerRuntimeConfiguration = registerRuntimeConfiguration;
7
- exports.unregisterRuntimeConfiguration = unregisterRuntimeConfiguration;
8
- exports.clearRuntimeConfigurations = clearRuntimeConfigurations;
9
- const enumerations_1 = require("./enumerations");
10
- const pbkdf2_profile_1 = require("./enumerations/pbkdf2-profile");
11
- const ecies_1 = require("./errors/ecies");
12
- const i18n_setup_1 = require("./i18n-setup");
13
- const regexes_1 = require("./regexes");
14
- exports.UINT8_SIZE = 1;
15
- exports.UINT16_SIZE = 2;
16
- exports.UINT16_MAX = 65535;
17
- exports.UINT32_SIZE = 4;
18
- exports.UINT32_MAX = 4294967295;
19
- exports.UINT64_SIZE = 8;
20
- exports.UINT64_MAX = 18446744073709551615n;
21
- exports.OBJECT_ID_LENGTH = 12;
22
- if (exports.OBJECT_ID_LENGTH !== 12) {
23
- console.warn('ObjectID length may have changed, breaking encryption', exports.OBJECT_ID_LENGTH);
1
+ import { ECIESErrorTypeEnum, EciesStringKey } from './enumerations';
2
+ import { Pbkdf2ProfileEnum } from './enumerations/pbkdf2-profile';
3
+ import { ECIESError } from './errors/ecies';
4
+ import { EciesComponentId, getEciesI18nEngine } from './i18n-setup';
5
+ import { MNEMONIC_REGEX, PASSWORD_REGEX } from './regexes';
6
+ import { ObjectIdProvider } from './lib/id-providers/objectid-provider';
7
+ import { InvariantValidator } from './lib/invariant-validator';
8
+ import { calculateConfigChecksum, captureCreationStack } from './interfaces/configuration-provenance';
9
+ export const UINT8_SIZE = 1;
10
+ export const UINT16_SIZE = 2;
11
+ export const UINT16_MAX = 65535;
12
+ export const UINT32_SIZE = 4;
13
+ export const UINT32_MAX = 4294967295;
14
+ export const UINT64_SIZE = 8;
15
+ export const UINT64_MAX = 18446744073709551615n;
16
+ export const OBJECT_ID_LENGTH = 12;
17
+ if (OBJECT_ID_LENGTH !== 12) {
18
+ console.warn('ObjectID length may have changed, breaking encryption', OBJECT_ID_LENGTH);
24
19
  }
25
20
  /**
26
21
  * Constants for checksum operations
27
22
  * These values are critical for data integrity and MUST NOT be changed
28
23
  * in an already established system as it will break all existing checksums.
29
24
  */
30
- exports.CHECKSUM = Object.freeze({
25
+ export const CHECKSUM = Object.freeze({
31
26
  /** Default hash bits for SHA3 */
32
27
  SHA3_DEFAULT_HASH_BITS: 512,
33
28
  /** Length of a SHA3 checksum buffer in bytes */
@@ -37,7 +32,7 @@ exports.CHECKSUM = Object.freeze({
37
32
  /** encoding to use for checksum */
38
33
  ENCODING: 'hex',
39
34
  });
40
- exports.PBKDF2 = Object.freeze({
35
+ export const PBKDF2 = Object.freeze({
41
36
  ALGORITHM: 'SHA-256',
42
37
  SALT_BYTES: 32,
43
38
  /**
@@ -46,20 +41,20 @@ exports.PBKDF2 = Object.freeze({
46
41
  */
47
42
  ITERATIONS_PER_SECOND: 1304000,
48
43
  });
49
- exports.PBKDF2_PROFILES = Object.freeze({
50
- [pbkdf2_profile_1.Pbkdf2ProfileEnum.BROWSER_PASSWORD]: Object.freeze({
44
+ export const PBKDF2_PROFILES = Object.freeze({
45
+ [Pbkdf2ProfileEnum.BROWSER_PASSWORD]: Object.freeze({
51
46
  hashBytes: 32,
52
47
  saltBytes: 64,
53
48
  iterations: 2000000,
54
49
  algorithm: 'SHA-512',
55
50
  }),
56
- [pbkdf2_profile_1.Pbkdf2ProfileEnum.HIGH_SECURITY]: Object.freeze({
51
+ [Pbkdf2ProfileEnum.HIGH_SECURITY]: Object.freeze({
57
52
  hashBytes: 64,
58
53
  saltBytes: 32,
59
54
  iterations: 5000000,
60
55
  algorithm: 'SHA-256',
61
56
  }),
62
- [pbkdf2_profile_1.Pbkdf2ProfileEnum.TEST_FAST]: Object.freeze({
57
+ [Pbkdf2ProfileEnum.TEST_FAST]: Object.freeze({
63
58
  hashBytes: 32,
64
59
  saltBytes: 64,
65
60
  iterations: 1000,
@@ -73,16 +68,16 @@ const ECIES_IV_SIZE = 16;
73
68
  const ECIES_AUTH_TAG_SIZE = 16;
74
69
  const ECIES_MULTIPLE_RECIPIENT_ID_SIZE = 12;
75
70
  // Define the expected value for SIMPLE.FIXED_OVERHEAD_SIZE
76
- const expectedSimpleOverhead = exports.UINT8_SIZE + ECIES_PUBLIC_KEY_LENGTH + ECIES_IV_SIZE + ECIES_AUTH_TAG_SIZE;
71
+ const expectedSimpleOverhead = UINT8_SIZE + ECIES_PUBLIC_KEY_LENGTH + ECIES_IV_SIZE + ECIES_AUTH_TAG_SIZE;
77
72
  // Define the expected value for MULTIPLE.FIXED_OVERHEAD_SIZE
78
73
  // Includes: type (1) + IV (16) + auth tag (16) = 33 (no CRC, AES-GCM provides authentication)
79
- const expectedMultipleOverhead = exports.UINT8_SIZE + ECIES_IV_SIZE + ECIES_AUTH_TAG_SIZE;
74
+ const expectedMultipleOverhead = UINT8_SIZE + ECIES_IV_SIZE + ECIES_AUTH_TAG_SIZE;
80
75
  // Update ENCRYPTED_KEY_SIZE to match Simple encryption (no CRC)
81
76
  const expectedMultipleEncryptedKeySize = ECIES_PUBLIC_KEY_LENGTH +
82
77
  ECIES_IV_SIZE +
83
78
  ECIES_AUTH_TAG_SIZE +
84
79
  ECIES_SYMMETRIC_KEY_SIZE;
85
- exports.ECIES = Object.freeze({
80
+ export const ECIES = Object.freeze({
86
81
  /** The elliptic curve to use for all ECDSA operations */
87
82
  CURVE_NAME: 'secp256k1',
88
83
  /** The primary key derivation path for HD wallets */
@@ -138,20 +133,27 @@ exports.ECIES = Object.freeze({
138
133
  MULTIPLE: 99,
139
134
  }),
140
135
  });
141
- exports.Constants = Object.freeze({
142
- UINT8_SIZE: exports.UINT8_SIZE,
143
- UINT16_SIZE: exports.UINT16_SIZE,
144
- UINT16_MAX: exports.UINT16_MAX,
145
- UINT32_SIZE: exports.UINT32_SIZE,
146
- UINT32_MAX: exports.UINT32_MAX,
147
- UINT64_SIZE: exports.UINT64_SIZE,
148
- UINT64_MAX: exports.UINT64_MAX,
136
+ /**
137
+ * Default ID provider instance (singleton).
138
+ * Uses MongoDB ObjectID format (12 bytes).
139
+ */
140
+ const DEFAULT_ID_PROVIDER = new ObjectIdProvider();
141
+ export const Constants = Object.freeze({
142
+ UINT8_SIZE: UINT8_SIZE,
143
+ UINT16_SIZE: UINT16_SIZE,
144
+ UINT16_MAX: UINT16_MAX,
145
+ UINT32_SIZE: UINT32_SIZE,
146
+ UINT32_MAX: UINT32_MAX,
147
+ UINT64_SIZE: UINT64_SIZE,
148
+ UINT64_MAX: UINT64_MAX,
149
149
  HEX_RADIX: 16,
150
- OBJECT_ID_LENGTH: exports.OBJECT_ID_LENGTH,
151
- CHECKSUM: exports.CHECKSUM,
152
- ECIES: exports.ECIES,
153
- PBKDF2: exports.PBKDF2,
154
- PBKDF2_PROFILES: exports.PBKDF2_PROFILES,
150
+ MEMBER_ID_LENGTH: DEFAULT_ID_PROVIDER.byteLength,
151
+ OBJECT_ID_LENGTH: OBJECT_ID_LENGTH,
152
+ idProvider: DEFAULT_ID_PROVIDER,
153
+ CHECKSUM: CHECKSUM,
154
+ ECIES: ECIES,
155
+ PBKDF2: PBKDF2,
156
+ PBKDF2_PROFILES: PBKDF2_PROFILES,
155
157
  /**
156
158
  * Number of rounds for bcrypt hashing. Higher values increase security but also consume more CPU resources.
157
159
  */
@@ -163,12 +165,12 @@ exports.Constants = Object.freeze({
163
165
  /**
164
166
  * The regular expression for valid passwords.
165
167
  */
166
- PasswordRegex: regexes_1.PASSWORD_REGEX,
168
+ PasswordRegex: PASSWORD_REGEX,
167
169
  /**
168
170
  * The regular expression for valid mnemonic phrases.
169
171
  * BIP39 - supports 12, 15, 18, 21, or 24 word mnemonics
170
172
  */
171
- MnemonicRegex: regexes_1.MNEMONIC_REGEX,
173
+ MnemonicRegex: MNEMONIC_REGEX,
172
174
  /**
173
175
  * Matches a 64-character hexadecimal string (SHA-256).
174
176
  */
@@ -257,29 +259,54 @@ function validateConstants(config) {
257
259
  const ecies = config.ECIES;
258
260
  if (checksum.SHA3_BUFFER_LENGTH !== checksum.SHA3_DEFAULT_HASH_BITS / 8 ||
259
261
  checksum.SHA3_BUFFER_LENGTH !== checksum.SHA3_DEFAULT_HASH_BITS / 8) {
260
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
261
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_InvalidChecksumConstants));
262
+ const engine = getEciesI18nEngine();
263
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_InvalidChecksumConstants));
262
264
  }
263
265
  const expectedEncryptedKeySize = computeMultipleEncryptedKeySize(ecies);
264
266
  if (ecies.MULTIPLE.ENCRYPTED_KEY_SIZE !== expectedEncryptedKeySize) {
265
- throw new ecies_1.ECIESError(enumerations_1.ECIESErrorTypeEnum.InvalidECIESMultipleEncryptedKeySize, (0, i18n_setup_1.getEciesI18nEngine)());
267
+ throw new ECIESError(ECIESErrorTypeEnum.InvalidECIESMultipleEncryptedKeySize, getEciesI18nEngine());
266
268
  }
267
269
  if (ecies.PUBLIC_KEY_LENGTH !== ecies.RAW_PUBLIC_KEY_LENGTH + 1) {
268
- throw new ecies_1.ECIESError(enumerations_1.ECIESErrorTypeEnum.InvalidECIESPublicKeyLength, (0, i18n_setup_1.getEciesI18nEngine)());
270
+ throw new ECIESError(ECIESErrorTypeEnum.InvalidECIESPublicKeyLength, getEciesI18nEngine());
271
+ }
272
+ if (ecies.MULTIPLE.RECIPIENT_COUNT_SIZE !== UINT16_SIZE) {
273
+ throw new ECIESError(ECIESErrorTypeEnum.InvalidECIESMultipleRecipientCountSize, getEciesI18nEngine());
274
+ }
275
+ if (ecies.MULTIPLE.DATA_LENGTH_SIZE !== UINT64_SIZE) {
276
+ throw new ECIESError(ECIESErrorTypeEnum.InvalidECIESMultipleDataLengthSize, getEciesI18nEngine());
269
277
  }
270
- if (ecies.MULTIPLE.RECIPIENT_COUNT_SIZE !== exports.UINT16_SIZE) {
271
- throw new ecies_1.ECIESError(enumerations_1.ECIESErrorTypeEnum.InvalidECIESMultipleRecipientCountSize, (0, i18n_setup_1.getEciesI18nEngine)());
278
+ // Validate ID provider is present and valid
279
+ if (!config.idProvider) {
280
+ throw new Error('ID provider is required in constants configuration');
272
281
  }
273
- if (ecies.MULTIPLE.DATA_LENGTH_SIZE !== exports.UINT64_SIZE) {
274
- throw new ecies_1.ECIESError(enumerations_1.ECIESErrorTypeEnum.InvalidECIESMultipleDataLengthSize, (0, i18n_setup_1.getEciesI18nEngine)());
282
+ if (typeof config.idProvider.byteLength !== 'number' ||
283
+ config.idProvider.byteLength < 1 ||
284
+ config.idProvider.byteLength > 255) {
285
+ throw new Error(`Invalid ID provider byteLength: ${config.idProvider.byteLength}. Must be between 1 and 255.`);
275
286
  }
276
- if (ecies.MULTIPLE.RECIPIENT_ID_SIZE !== config.OBJECT_ID_LENGTH) {
277
- throw new ecies_1.ECIESError(enumerations_1.ECIESErrorTypeEnum.InvalidECIESMultipleRecipientIdSize, (0, i18n_setup_1.getEciesI18nEngine)());
287
+ // Validate MEMBER_ID_LENGTH matches ID provider
288
+ if (config.MEMBER_ID_LENGTH !== config.idProvider.byteLength) {
289
+ throw new Error(`MEMBER_ID_LENGTH (${config.MEMBER_ID_LENGTH}) must match idProvider.byteLength (${config.idProvider.byteLength})`);
290
+ }
291
+ // NOTE: We now validate against idProvider.byteLength instead of OBJECT_ID_LENGTH
292
+ // This allows for flexible ID sizes (12 bytes for ObjectID, 16 for GUID, 32 for legacy, etc.)
293
+ if (ecies.MULTIPLE.RECIPIENT_ID_SIZE !== config.idProvider.byteLength) {
294
+ throw new ECIESError(ECIESErrorTypeEnum.InvalidECIESMultipleRecipientIdSize, getEciesI18nEngine());
278
295
  }
279
296
  }
280
- validateConstants(exports.Constants);
297
+ validateConstants(Constants);
281
298
  const configurationRegistry = new Map();
282
- configurationRegistry.set(DEFAULT_CONFIGURATION_KEY, exports.Constants);
299
+ configurationRegistry.set(DEFAULT_CONFIGURATION_KEY, Constants);
300
+ // Provenance tracking
301
+ const provenanceRegistry = new Map();
302
+ provenanceRegistry.set(DEFAULT_CONFIGURATION_KEY, {
303
+ baseConfigKey: 'none',
304
+ overrides: {},
305
+ timestamp: new Date(),
306
+ source: 'default',
307
+ checksum: calculateConfigChecksum(Constants),
308
+ description: 'Built-in default configuration',
309
+ });
283
310
  function isFullConstantsConfig(value) {
284
311
  if (!isPlainObject(value)) {
285
312
  return false;
@@ -288,15 +315,33 @@ function isFullConstantsConfig(value) {
288
315
  return (candidate.CHECKSUM !== undefined &&
289
316
  candidate.ECIES !== undefined &&
290
317
  candidate.PBKDF2 !== undefined &&
291
- candidate.PBKDF2_PROFILES !== undefined);
318
+ candidate.PBKDF2_PROFILES !== undefined &&
319
+ candidate.idProvider !== undefined);
292
320
  }
293
- function createRuntimeConfiguration(overrides, base = exports.Constants) {
321
+ export function createRuntimeConfiguration(overrides, base = Constants) {
294
322
  const merged = deepClone(base);
295
323
  applyOverrides(merged, overrides);
324
+ // Auto-sync MEMBER_ID_LENGTH with idProvider.byteLength if provider changed
325
+ if (merged.idProvider && merged.idProvider !== base.idProvider) {
326
+ merged.MEMBER_ID_LENGTH = merged.idProvider.byteLength;
327
+ }
328
+ // Auto-sync ECIES.MULTIPLE.RECIPIENT_ID_SIZE with idProvider.byteLength if provider changed
329
+ if (merged.idProvider && merged.idProvider !== base.idProvider) {
330
+ merged.ECIES = {
331
+ ...merged.ECIES,
332
+ MULTIPLE: {
333
+ ...merged.ECIES.MULTIPLE,
334
+ RECIPIENT_ID_SIZE: merged.idProvider.byteLength,
335
+ },
336
+ };
337
+ }
338
+ // Validate individual properties
296
339
  validateConstants(merged);
340
+ // Validate all invariants (relationships between properties)
341
+ InvariantValidator.validateAll(merged);
297
342
  return deepFreeze(merged);
298
343
  }
299
- class ConstantsRegistry {
344
+ export class ConstantsRegistry {
300
345
  static DEFAULT_KEY = DEFAULT_CONFIGURATION_KEY;
301
346
  static listKeys() {
302
347
  return Array.from(configurationRegistry.keys());
@@ -308,48 +353,79 @@ class ConstantsRegistry {
308
353
  return (configurationRegistry.get(key) ??
309
354
  configurationRegistry.get(DEFAULT_CONFIGURATION_KEY));
310
355
  }
356
+ /**
357
+ * Get provenance information for a configuration
358
+ */
359
+ static getProvenance(key = DEFAULT_CONFIGURATION_KEY) {
360
+ return provenanceRegistry.get(key);
361
+ }
362
+ /**
363
+ * List all configurations with their provenance
364
+ */
365
+ static listWithProvenance() {
366
+ return Array.from(configurationRegistry.entries()).map(([key, config]) => ({
367
+ key,
368
+ config,
369
+ provenance: provenanceRegistry.get(key),
370
+ }));
371
+ }
311
372
  static create(overrides, baseKey = DEFAULT_CONFIGURATION_KEY) {
312
373
  const baseConfig = ConstantsRegistry.get(baseKey);
313
374
  return createRuntimeConfiguration(overrides, baseConfig);
314
375
  }
315
376
  static register(key, configOrOverrides, options) {
316
377
  if (key === DEFAULT_CONFIGURATION_KEY) {
317
- const engine = (0, i18n_setup_1.getEciesI18nEngine)();
318
- throw new Error(engine.translate(i18n_setup_1.EciesComponentId, enumerations_1.EciesStringKey.Error_ECIESError_CannotOverwriteDefaultConfiguration));
378
+ const engine = getEciesI18nEngine();
379
+ throw new Error(engine.translate(EciesComponentId, EciesStringKey.Error_ECIESError_CannotOverwriteDefaultConfiguration));
319
380
  }
320
381
  const baseKey = options?.baseKey ?? DEFAULT_CONFIGURATION_KEY;
321
382
  const baseConfig = ConstantsRegistry.get(baseKey);
322
- const configuration = isFullConstantsConfig(configOrOverrides)
383
+ const isFullConfig = isFullConstantsConfig(configOrOverrides);
384
+ const configuration = isFullConfig
323
385
  ? createRuntimeConfiguration(undefined, configOrOverrides)
324
386
  : createRuntimeConfiguration(configOrOverrides, baseConfig);
387
+ // Track provenance
388
+ const provenance = {
389
+ baseConfigKey: typeof baseKey === 'symbol' ? baseKey.toString() : baseKey,
390
+ overrides: isFullConfig ? {} : (configOrOverrides ?? {}),
391
+ timestamp: new Date(),
392
+ source: isFullConfig ? 'custom' : 'runtime',
393
+ checksum: calculateConfigChecksum(configuration),
394
+ description: options?.description,
395
+ creationStack: captureCreationStack(),
396
+ };
325
397
  configurationRegistry.set(key, configuration);
398
+ provenanceRegistry.set(key, provenance);
326
399
  return configuration;
327
400
  }
328
401
  static unregister(key) {
329
402
  if (key === DEFAULT_CONFIGURATION_KEY) {
330
403
  return false;
331
404
  }
405
+ provenanceRegistry.delete(key);
332
406
  return configurationRegistry.delete(key);
333
407
  }
334
408
  static clear() {
409
+ const defaultProvenance = provenanceRegistry.get(DEFAULT_CONFIGURATION_KEY);
335
410
  configurationRegistry.clear();
336
- configurationRegistry.set(DEFAULT_CONFIGURATION_KEY, exports.Constants);
411
+ provenanceRegistry.clear();
412
+ configurationRegistry.set(DEFAULT_CONFIGURATION_KEY, Constants);
413
+ if (defaultProvenance) {
414
+ provenanceRegistry.set(DEFAULT_CONFIGURATION_KEY, defaultProvenance);
415
+ }
337
416
  }
338
417
  }
339
- exports.ConstantsRegistry = ConstantsRegistry;
340
- function getRuntimeConfiguration(key = DEFAULT_CONFIGURATION_KEY) {
418
+ export function getRuntimeConfiguration(key = DEFAULT_CONFIGURATION_KEY) {
341
419
  return ConstantsRegistry.get(key);
342
420
  }
343
- function registerRuntimeConfiguration(key, configOrOverrides, options) {
421
+ export function registerRuntimeConfiguration(key, configOrOverrides, options) {
344
422
  return ConstantsRegistry.register(key, configOrOverrides, options);
345
423
  }
346
- function unregisterRuntimeConfiguration(key) {
424
+ export function unregisterRuntimeConfiguration(key) {
347
425
  return ConstantsRegistry.unregister(key);
348
426
  }
349
- function clearRuntimeConfigurations() {
427
+ export function clearRuntimeConfigurations() {
350
428
  ConstantsRegistry.clear();
351
429
  }
352
- var regexes_2 = require("./regexes");
353
- Object.defineProperty(exports, "PASSWORD_REGEX", { enumerable: true, get: function () { return regexes_2.PASSWORD_REGEX; } });
354
- Object.defineProperty(exports, "MNEMONIC_REGEX", { enumerable: true, get: function () { return regexes_2.MNEMONIC_REGEX; } });
430
+ export { PASSWORD_REGEX, MNEMONIC_REGEX } from './regexes';
355
431
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../packages/digitaldefiance-ecies-lib/src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOpE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AAExE,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,EAAE,uBAAuB,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAEtG,MAAM,CAAC,MAAM,UAAU,GAAW,CAAU,CAAC;AAC7C,MAAM,CAAC,MAAM,WAAW,GAAW,CAAU,CAAC;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAW,KAAc,CAAC;AACjD,MAAM,CAAC,MAAM,WAAW,GAAW,CAAU,CAAC;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAW,UAAmB,CAAC;AACtD,MAAM,CAAC,MAAM,WAAW,GAAW,CAAU,CAAC;AAC9C,MAAM,CAAC,MAAM,UAAU,GAAW,qBAA8B,CAAC;AACjE,MAAM,CAAC,MAAM,gBAAgB,GAAW,EAAW,CAAC;AAEpD,IAAI,gBAAgB,KAAK,EAAE,EAAE,CAAC;IAC5B,OAAO,CAAC,IAAI,CACV,uDAAuD,EACvD,gBAAgB,CACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAoB,MAAM,CAAC,MAAM,CAAC;IACrD,iCAAiC;IACjC,sBAAsB,EAAE,GAAY;IAEpC,gDAAgD;IAChD,kBAAkB,EAAE,EAAW;IAE/B,oCAAoC;IACpC,SAAS,EAAE,UAAmB;IAE9B,mCAAmC;IACnC,QAAQ,EAAE,KAAc;CAChB,CAAC,CAAC;AAEZ,MAAM,CAAC,MAAM,MAAM,GAAkB,MAAM,CAAC,MAAM,CAAC;IACjD,SAAS,EAAE,SAAkB;IAC7B,UAAU,EAAE,EAAW;IACvB;;;OAGG;IACH,qBAAqB,EAAE,OAAgB;CAC/B,CAAC,CAAC;AAEZ,MAAM,CAAC,MAAM,eAAe,GAAmB,MAAM,CAAC,MAAM,CAAC;IAC3D,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAClD,SAAS,EAAE,EAAW;QACtB,SAAS,EAAE,EAAW;QACtB,UAAU,EAAE,OAAgB;QAC5B,SAAS,EAAE,SAAkB;KACrB,CAAC;IACX,CAAC,iBAAiB,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAC/C,SAAS,EAAE,EAAW;QACtB,SAAS,EAAE,EAAW;QACtB,UAAU,EAAE,OAAgB;QAC5B,SAAS,EAAE,SAAkB;KACrB,CAAC;IACX,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC;QAC3C,SAAS,EAAE,EAAW;QACtB,SAAS,EAAE,EAAW;QACtB,UAAU,EAAE,IAAa;QACzB,SAAS,EAAE,SAAkB;KACrB,CAAC;CACH,CAAC,CAAC;AAEZ,MAAM,wBAAwB,GAAG,EAAW,CAAC;AAC7C,MAAM,uBAAuB,GAAG,EAAW,CAAC;AAC5C,MAAM,2BAA2B,GAAG,EAAW,CAAC;AAChD,MAAM,aAAa,GAAG,EAAW,CAAC;AAClC,MAAM,mBAAmB,GAAG,EAAW,CAAC;AACxC,MAAM,gCAAgC,GAAG,EAAW,CAAC;AAErD,2DAA2D;AAC3D,MAAM,sBAAsB,GAC1B,UAAU,GAAG,uBAAuB,GAAG,aAAa,GAAG,mBAAmB,CAAC;AAE7E,6DAA6D;AAC7D,8FAA8F;AAC9F,MAAM,wBAAwB,GAC5B,UAAU,GAAG,aAAa,GAAG,mBAAmB,CAAC;AAEnD,gEAAgE;AAChE,MAAM,gCAAgC,GACpC,uBAAuB;IACvB,aAAa;IACb,mBAAmB;IACnB,wBAAwB,CAAC;AAE3B,MAAM,CAAC,MAAM,KAAK,GAAoB,MAAM,CAAC,MAAM,CAAC;IAClD,yDAAyD;IACzD,UAAU,EAAE,WAAoB;IAEhC,qDAAqD;IACrD,2BAA2B,EAAE,kBAA2B;IAExD,iCAAiC,EAAE,aAAsB;IAEzD,0CAA0C;IAC1C,cAAc,EAAE,EAAW;IAE3B,+DAA+D;IAC/D,qBAAqB,EAAE,2BAA2B;IAElD,wDAAwD;IACxD,iBAAiB,EAAE,uBAAuB;IAE1C,gBAAgB,EAAE,IAAa;IAE/B,0EAA0E;IAC1E,iBAAiB,EAAE,GAAY;IAE/B,mDAAmD;IACnD,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC;QACvB,SAAS,EAAE,KAAc;QACzB,IAAI,EAAE,KAAc;QACpB,QAAQ,EAAE,GAAY;QACtB,QAAQ,EAAE,wBAAwB,EAAE,eAAe;KAC3C,CAAC;IAEX,OAAO,EAAE,aAAa;IACtB,aAAa,EAAE,mBAAmB;IAClC,iBAAiB,EAAE,gBAAyB,EAAE,qCAAqC;IAEnF;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,mBAAmB,EAAE,sBAAsB,EAAE,uDAAuD;QACpG,gBAAgB,EAAE,CAAU;KACpB,CAAC;IAEX;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;QACpB,mBAAmB,EAAE,GAAY,EAAE,yEAAyE;QAC5G,gBAAgB,EAAE,CAAC;KACX,CAAC;IAEX;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;QACtB,mBAAmB,EAAE,wBAAwB,EAAE,6CAA6C;QAC5F,kBAAkB,EAAE,gCAAgC,EAAE,MAAM;QAC5D,cAAc,EAAE,KAAK;QACrB,iBAAiB,EAAE,gCAAgC;QACnD,oBAAoB,EAAE,CAAC;QACvB,gBAAgB,EAAE,CAAC;KACX,CAAC;IAEX,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC;QAC7B,MAAM,EAAE,EAAW;QACnB,MAAM,EAAE,EAAW;QACnB,QAAQ,EAAE,EAAW;KACb,CAAC;CACZ,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,mBAAmB,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEnD,MAAM,CAAC,MAAM,SAAS,GAAe,MAAM,CAAC,MAAM,CAAC;IACjD,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,WAAW,EAAE,WAAW;IACxB,UAAU,EAAE,UAAU;IACtB,SAAS,EAAE,EAAW;IACtB,gBAAgB,EAAE,mBAAmB,CAAC,UAAU;IAChD,gBAAgB,EAAE,gBAAgB;IAClC,UAAU,EAAE,mBAAmB;IAC/B,QAAQ,EAAE,QAAQ;IAClB,KAAK,EAAE,KAAK;IACZ,MAAM,EAAE,MAAM;IACd,eAAe,EAAE,eAAe;IAChC;;OAEG;IACH,YAAY,EAAE,EAAW;IACzB;;OAEG;IACH,iBAAiB,EAAE,CAAU;IAC7B;;OAEG;IACH,aAAa,EAAE,cAAc;IAC7B;;;OAGG;IACH,aAAa,EAAE,cAAc;IAC7B;;OAEG;IACH,iBAAiB,EAAE,gBAAgB;CAC3B,CAAC,CAAC;AAIZ,MAAM,yBAAyB,GAAqB,MAAM,CAAC,GAAG,CAC5D,yCAAyC,CAC1C,CAAC;AAEF,SAAS,aAAa,CAAC,KAAc;IACnC,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,YAAY,MAAM,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,KAAK,MAAM,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,SAAS,SAAS,CAAI,KAAQ;IAC5B,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAiB,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,YAAY,MAAM,EAAE,CAAC;QAC5B,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAiB,CAAC;IAC/D,CAAC;IACD,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAiB,CAAC;IACnD,CAAC;IACD,IAAI,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACjD,MAAM,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,MAAW,CAAC;IACrB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,cAAc,CAAI,MAAS,EAAE,SAA0B;IAC9D,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,KAAK,MAAM,CAAC,GAAG,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7D,MAAM,QAAQ,GAAG,GAAc,CAAC;QAChC,IAAI,aAAa,KAAK,SAAS,EAAE,CAAC;YAChC,SAAS;QACX,CAAC;QAED,MAAM,YAAY,GAAI,MAAc,CAAC,QAAQ,CAAC,CAAC;QAE/C,IAAI,aAAa,CAAC,YAAY,CAAC,IAAI,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC;YAC/D,MAAc,CAAC,QAAQ,CAAC,GAAG,cAAc,CACxC,YAAY,EACZ,aAAoB,CACrB,CAAC;QACJ,CAAC;aAAM,CAAC;YACL,MAAc,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,UAAU,CAAI,KAAQ;IAC7B,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAErB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;QACzD,8DAA8D;QAC9D,MAAM,WAAW,GAAI,KAAa,CAAC,QAAQ,CAAC,CAAC;QAC7C,UAAU,CAAC,WAAW,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,+BAA+B,CAAC,KAAsB;IAC7D,OAAO,CACL,KAAK,CAAC,iBAAiB;QACvB,KAAK,CAAC,OAAO;QACb,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,SAAS,CAAC,QAAQ,CACzB,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAkB;IAC3C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;IAE3B,IACE,QAAQ,CAAC,kBAAkB,KAAK,QAAQ,CAAC,sBAAsB,GAAG,CAAC;QACnE,QAAQ,CAAC,kBAAkB,KAAK,QAAQ,CAAC,sBAAsB,GAAG,CAAC,EACnE,CAAC;QACD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC,yCAAyC,CAAC,CAAC,CAAC;IAChH,CAAC;IAED,MAAM,wBAAwB,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAC;IACxE,IAAI,KAAK,CAAC,QAAQ,CAAC,kBAAkB,KAAK,wBAAwB,EAAE,CAAC;QACnE,MAAM,IAAI,UAAU,CAClB,kBAAkB,CAAC,oCAAoC,EACvD,kBAAkB,EAAS,CAC5B,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,iBAAiB,KAAK,KAAK,CAAC,qBAAqB,GAAG,CAAC,EAAE,CAAC;QAChE,MAAM,IAAI,UAAU,CAClB,kBAAkB,CAAC,2BAA2B,EAC9C,kBAAkB,EAAS,CAC5B,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,oBAAoB,KAAK,WAAW,EAAE,CAAC;QACxD,MAAM,IAAI,UAAU,CAClB,kBAAkB,CAAC,sCAAsC,EACzD,kBAAkB,EAAS,CAC5B,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,gBAAgB,KAAK,WAAW,EAAE,CAAC;QACpD,MAAM,IAAI,UAAU,CAClB,kBAAkB,CAAC,kCAAkC,EACrD,kBAAkB,EAAS,CAC5B,CAAC;IACJ,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,OAAO,MAAM,CAAC,UAAU,CAAC,UAAU,KAAK,QAAQ;QAChD,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CAAC;QAChC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,GAAG,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,mCAAmC,MAAM,CAAC,UAAU,CAAC,UAAU,8BAA8B,CAC9F,CAAC;IACJ,CAAC;IAED,gDAAgD;IAChD,IAAI,MAAM,CAAC,gBAAgB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC7D,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,CAAC,gBAAgB,uCAAuC,MAAM,CAAC,UAAU,CAAC,UAAU,GAAG,CACnH,CAAC;IACJ,CAAC;IAED,kFAAkF;IAClF,8FAA8F;IAC9F,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,KAAK,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QACtE,MAAM,IAAI,UAAU,CAClB,kBAAkB,CAAC,mCAAmC,EACtD,kBAAkB,EAAS,CAC5B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,iBAAiB,CAAC,SAAS,CAAC,CAAC;AAE7B,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAgC,CAAC;AACtE,qBAAqB,CAAC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;AAEhE,sBAAsB;AACtB,MAAM,kBAAkB,GAAG,IAAI,GAAG,EAA8C,CAAC;AACjF,kBAAkB,CAAC,GAAG,CAAC,yBAAyB,EAAE;IAChD,aAAa,EAAE,MAAM;IACrB,SAAS,EAAE,EAAE;IACb,SAAS,EAAE,IAAI,IAAI,EAAE;IACrB,MAAM,EAAE,SAAS;IACjB,QAAQ,EAAE,uBAAuB,CAAC,SAAS,CAAC;IAC5C,WAAW,EAAE,gCAAgC;CAC9C,CAAC,CAAC;AAEH,SAAS,qBAAqB,CAAC,KAAc;IAC3C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,GAAG,KAA4B,CAAC;IAC/C,OAAO,CACL,SAAS,CAAC,QAAQ,KAAK,SAAS;QAChC,SAAS,CAAC,KAAK,KAAK,SAAS;QAC7B,SAAS,CAAC,MAAM,KAAK,SAAS;QAC9B,SAAS,CAAC,eAAe,KAAK,SAAS;QACvC,SAAS,CAAC,UAAU,KAAK,SAAS,CACnC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CACxC,SAAmC,EACnC,OAAmB,SAAS;IAE5B,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAElC,4EAA4E;IAC5E,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/D,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC;IACzD,CAAC;IAED,4FAA4F;IAC5F,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/D,MAAM,CAAC,KAAK,GAAG;YACb,GAAG,MAAM,CAAC,KAAK;YACf,QAAQ,EAAE;gBACR,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ;gBACxB,iBAAiB,EAAE,MAAM,CAAC,UAAU,CAAC,UAAU;aAChD;SACF,CAAC;IACJ,CAAC;IAED,iCAAiC;IACjC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE1B,6DAA6D;IAC7D,kBAAkB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAEvC,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,MAAM,OAAO,iBAAiB;IACrB,MAAM,CAAU,WAAW,GAAG,yBAAyB,CAAC;IAExD,MAAM,CAAC,QAAQ;QACpB,OAAO,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,GAAqB;QACrC,OAAO,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAEM,MAAM,CAAC,GAAG,CAAC,MAAwB,yBAAyB;QACjE,OAAO,CACL,qBAAqB,CAAC,GAAG,CAAC,GAAG,CAAC;YAC9B,qBAAqB,CAAC,GAAG,CAAC,yBAAyB,CAAE,CACtD,CAAC;IACJ,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,aAAa,CAAC,MAAwB,yBAAyB;QAC3E,OAAO,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,kBAAkB;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;YACzE,GAAG;YACH,MAAM;YACN,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC;SACxC,CAAC,CAAC,CAAC;IACN,CAAC;IAEM,MAAM,CAAC,MAAM,CAClB,SAAmC,EACnC,UAA4B,yBAAyB;QAErD,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClD,OAAO,0BAA0B,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,QAAQ,CACpB,GAAqB,EACrB,iBAAwD,EACxD,OAA8D;QAE9D,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,gBAAgB,EAAE,cAAc,CAAC,oDAAoD,CAAC,CAAC,CAAC;QAC3H,CAAC;QAED,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,yBAAyB,CAAC;QAC9D,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAElD,MAAM,YAAY,GAAG,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG,YAAY;YAChC,CAAC,CAAC,0BAA0B,CAAC,SAAS,EAAE,iBAAiB,CAAC;YAC1D,CAAC,CAAC,0BAA0B,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;QAE9D,mBAAmB;QACnB,MAAM,UAAU,GAA6B;YAC3C,aAAa,EAAE,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO;YACzE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,iBAAiB,IAAI,EAAE,CAAC;YACxD,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC3C,QAAQ,EAAE,uBAAuB,CAAC,aAAa,CAAC;YAChD,WAAW,EAAE,OAAO,EAAE,WAAW;YACjC,aAAa,EAAE,oBAAoB,EAAE;SACtC,CAAC;QAEF,qBAAqB,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC9C,kBAAkB,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACxC,OAAO,aAAa,CAAC;IACvB,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,GAAqB;QAC5C,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/B,OAAO,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,KAAK;QACjB,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAC5E,qBAAqB,CAAC,KAAK,EAAE,CAAC;QAC9B,kBAAkB,CAAC,KAAK,EAAE,CAAC;QAC3B,qBAAqB,CAAC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;QAChE,IAAI,iBAAiB,EAAE,CAAC;YACtB,kBAAkB,CAAC,GAAG,CAAC,yBAAyB,EAAE,iBAAiB,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;;AAGH,MAAM,UAAU,uBAAuB,CACrC,MAAwB,yBAAyB;IAEjD,OAAO,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACpC,CAAC;AAED,MAAM,UAAU,4BAA4B,CAC1C,GAAqB,EACrB,iBAAwD,EACxD,OAAwC;IAExC,OAAO,iBAAiB,CAAC,QAAQ,CAAC,GAAG,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,GAAqB;IAErB,OAAO,iBAAiB,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,0BAA0B;IACxC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC"}