internxt-crypto 0.0.11 → 0.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/dist/{symmetric-crypto-CrdS1Che.mjs → aes-DCb9dJqb.mjs} +10 -46
  2. package/dist/aes-DCb9dJqb.mjs.map +1 -0
  3. package/dist/{symmetric-crypto-D65zB396.js → aes-DQo1MyCz.js} +13 -54
  4. package/dist/aes-DQo1MyCz.js.map +1 -0
  5. package/dist/asymmetric-crypto.d.mts +1 -4
  6. package/dist/asymmetric-crypto.d.mts.map +1 -0
  7. package/dist/asymmetric-crypto.d.ts +1 -4
  8. package/dist/asymmetric-crypto.d.ts.map +1 -0
  9. package/dist/asymmetric-crypto.js +8 -7
  10. package/dist/asymmetric-crypto.mjs +1 -1
  11. package/dist/{chunk-DWirmd9C.mjs → chunk-DQk6qfdC.mjs} +3 -3
  12. package/dist/{chunk-Dt-PWiN7.js → chunk-EbLFQX5m.js} +3 -3
  13. package/dist/constants.d.mts +5 -5
  14. package/dist/constants.d.mts.map +1 -0
  15. package/dist/constants.d.ts +5 -5
  16. package/dist/constants.d.ts.map +1 -0
  17. package/dist/constants.js +63 -30
  18. package/dist/constants.js.map +1 -0
  19. package/dist/constants.mjs +33 -2
  20. package/dist/constants.mjs.map +1 -0
  21. package/dist/derive-key.d.mts +1 -4
  22. package/dist/derive-key.d.mts.map +1 -0
  23. package/dist/derive-key.d.ts +1 -4
  24. package/dist/derive-key.d.ts.map +1 -0
  25. package/dist/derive-key.js +12 -14
  26. package/dist/derive-key.mjs +1 -4
  27. package/dist/{derive-key-CBf2WxJd.js → deriveKeysFromPassword-BYaiSGKL.js} +26 -52
  28. package/dist/deriveKeysFromPassword-BYaiSGKL.js.map +1 -0
  29. package/dist/{derive-key-Be7hS-cN.mjs → deriveKeysFromPassword-XIwzErlL.mjs} +7 -28
  30. package/dist/deriveKeysFromPassword-XIwzErlL.mjs.map +1 -0
  31. package/dist/email-crypto.d.mts +2 -5
  32. package/dist/email-crypto.d.mts.map +1 -0
  33. package/dist/email-crypto.d.ts +2 -5
  34. package/dist/email-crypto.d.ts.map +1 -0
  35. package/dist/email-crypto.js +12 -16
  36. package/dist/email-crypto.mjs +1 -6
  37. package/dist/email-search.d.mts +20 -23
  38. package/dist/email-search.d.mts.map +1 -0
  39. package/dist/email-search.d.ts +20 -23
  40. package/dist/email-search.d.ts.map +1 -0
  41. package/dist/email-search.js +25 -63
  42. package/dist/email-search.js.map +1 -1
  43. package/dist/email-search.mjs +17 -51
  44. package/dist/email-search.mjs.map +1 -1
  45. package/dist/{keystore-crypto-Bjgriq9h.mjs → emailEncryptionKey-B9xHw1h_.mjs} +12 -21
  46. package/dist/emailEncryptionKey-B9xHw1h_.mjs.map +1 -0
  47. package/dist/{keystore-crypto-B4yCVo9l.js → emailEncryptionKey-CQNe5W_T.js} +25 -40
  48. package/dist/emailEncryptionKey-CQNe5W_T.js.map +1 -0
  49. package/dist/{email-crypto-BrT98taw.js → emailKeys-C0KhtfNP.js} +67 -112
  50. package/dist/emailKeys-C0KhtfNP.js.map +1 -0
  51. package/dist/{email-crypto-DJUEjTxA.mjs → emailKeys-D4lp9NRv.mjs} +29 -75
  52. package/dist/emailKeys-D4lp9NRv.mjs.map +1 -0
  53. package/dist/{utils-DS04iUcX.mjs → genID-3Er5IowC.mjs} +4 -24
  54. package/dist/genID-3Er5IowC.mjs.map +1 -0
  55. package/dist/{utils-CNs3cyDj.js → genID-YJSl3YhL.js} +6 -31
  56. package/dist/genID-YJSl3YhL.js.map +1 -0
  57. package/dist/hash.d.mts +1 -4
  58. package/dist/hash.d.mts.map +1 -0
  59. package/dist/hash.d.ts +1 -4
  60. package/dist/hash.d.ts.map +1 -0
  61. package/dist/hash.js +11 -10
  62. package/dist/hash.mjs +1 -1
  63. package/dist/index.d.mts +19 -39
  64. package/dist/index.d.mts.map +1 -0
  65. package/dist/index.d.ts +19 -39
  66. package/dist/index.d.ts.map +1 -0
  67. package/dist/index.js +97 -88
  68. package/dist/index.mjs +12 -14
  69. package/dist/{asymmetric-crypto-CyXsV4XT.mjs → keys-BfcaiAOv.mjs} +3 -15
  70. package/dist/keys-BfcaiAOv.mjs.map +1 -0
  71. package/dist/{asymmetric-crypto-BORmLhnx.js → keys-CinT7kEY.js} +2 -20
  72. package/dist/keys-CinT7kEY.js.map +1 -0
  73. package/dist/keystore-crypto.d.mts +2 -5
  74. package/dist/keystore-crypto.d.mts.map +1 -0
  75. package/dist/keystore-crypto.d.ts +2 -5
  76. package/dist/keystore-crypto.d.ts.map +1 -0
  77. package/dist/keystore-crypto.js +5 -10
  78. package/dist/keystore-crypto.mjs +1 -7
  79. package/dist/kyber768-SXnIo-Nw.mjs +47 -0
  80. package/dist/kyber768-SXnIo-Nw.mjs.map +1 -0
  81. package/dist/kyber768-WUVc2fIR.js +65 -0
  82. package/dist/kyber768-WUVc2fIR.js.map +1 -0
  83. package/dist/{hash-BoqwNkcd.js → mac-BMb1F0dN.js} +3 -23
  84. package/dist/mac-BMb1F0dN.js.map +1 -0
  85. package/dist/{hash-CXeGAwai.mjs → mac-ZpRlx8Fs.mjs} +3 -18
  86. package/dist/mac-ZpRlx8Fs.mjs.map +1 -0
  87. package/dist/post-quantum-crypto.d.mts +32 -2
  88. package/dist/post-quantum-crypto.d.mts.map +1 -0
  89. package/dist/post-quantum-crypto.d.ts +32 -2
  90. package/dist/post-quantum-crypto.d.ts.map +1 -0
  91. package/dist/post-quantum-crypto.js +5 -16
  92. package/dist/post-quantum-crypto.mjs +2 -2
  93. package/dist/storage-service.d.mts +47 -2
  94. package/dist/storage-service.d.mts.map +1 -0
  95. package/dist/storage-service.d.ts +47 -2
  96. package/dist/storage-service.d.ts.map +1 -0
  97. package/dist/storage-service.js +58 -4
  98. package/dist/storage-service.js.map +1 -0
  99. package/dist/storage-service.mjs +55 -2
  100. package/dist/storage-service.mjs.map +1 -0
  101. package/dist/symmetric-crypto.d.mts +5 -8
  102. package/dist/symmetric-crypto.d.mts.map +1 -0
  103. package/dist/symmetric-crypto.d.ts +5 -8
  104. package/dist/symmetric-crypto.d.ts.map +1 -0
  105. package/dist/symmetric-crypto.js +9 -9
  106. package/dist/symmetric-crypto.mjs +1 -2
  107. package/dist/types.d.mts +108 -2
  108. package/dist/types.d.mts.map +1 -0
  109. package/dist/types.d.ts +108 -2
  110. package/dist/types.d.ts.map +1 -0
  111. package/dist/types.js +11 -2
  112. package/dist/types.js.map +1 -0
  113. package/dist/types.mjs +9 -2
  114. package/dist/types.mjs.map +1 -0
  115. package/dist/utils.d.mts +2 -5
  116. package/dist/utils.d.mts.map +1 -0
  117. package/dist/utils.d.ts +2 -5
  118. package/dist/utils.d.ts.map +1 -0
  119. package/dist/utils.js +16 -15
  120. package/dist/utils.mjs +1 -1
  121. package/package.json +24 -14
  122. package/dist/asymmetric-crypto-BORmLhnx.js.map +0 -1
  123. package/dist/asymmetric-crypto-CyXsV4XT.mjs.map +0 -1
  124. package/dist/constants-Ccp21E03.js +0 -208
  125. package/dist/constants-Ccp21E03.js.map +0 -1
  126. package/dist/constants-kTeX-2T0.mjs +0 -34
  127. package/dist/constants-kTeX-2T0.mjs.map +0 -1
  128. package/dist/derive-key-Be7hS-cN.mjs.map +0 -1
  129. package/dist/derive-key-CBf2WxJd.js.map +0 -1
  130. package/dist/email-crypto-BrT98taw.js.map +0 -1
  131. package/dist/email-crypto-DJUEjTxA.mjs.map +0 -1
  132. package/dist/hash-BoqwNkcd.js.map +0 -1
  133. package/dist/hash-CXeGAwai.mjs.map +0 -1
  134. package/dist/index-CQqgKsbX.d.ts +0 -50
  135. package/dist/index-CintVUbp.d.ts +0 -97
  136. package/dist/index-D5pBU_A5.d.mts +0 -50
  137. package/dist/index-MaOov-ag.d.mts +0 -97
  138. package/dist/keystore-crypto-B4yCVo9l.js.map +0 -1
  139. package/dist/keystore-crypto-Bjgriq9h.mjs.map +0 -1
  140. package/dist/keystore-service.d.mts +0 -48
  141. package/dist/keystore-service.d.ts +0 -48
  142. package/dist/keystore-service.js +0 -122
  143. package/dist/keystore-service.js.map +0 -1
  144. package/dist/keystore-service.mjs +0 -114
  145. package/dist/keystore-service.mjs.map +0 -1
  146. package/dist/post-quantum-crypto-CAi-cEkV.js +0 -189
  147. package/dist/post-quantum-crypto-CAi-cEkV.js.map +0 -1
  148. package/dist/post-quantum-crypto-Vv34t6gX.mjs +0 -154
  149. package/dist/post-quantum-crypto-Vv34t6gX.mjs.map +0 -1
  150. package/dist/storage-service-BgIK2aYZ.js +0 -82
  151. package/dist/storage-service-BgIK2aYZ.js.map +0 -1
  152. package/dist/storage-service-CubCbhY2.mjs +0 -65
  153. package/dist/storage-service-CubCbhY2.mjs.map +0 -1
  154. package/dist/symmetric-crypto-CrdS1Che.mjs.map +0 -1
  155. package/dist/symmetric-crypto-D65zB396.js.map +0 -1
  156. package/dist/types-52g887Zi.js +0 -16
  157. package/dist/types-52g887Zi.js.map +0 -1
  158. package/dist/types-BiEoleqw.mjs +0 -10
  159. package/dist/types-BiEoleqw.mjs.map +0 -1
  160. package/dist/types-Ds3ivE9W.d.ts +0 -104
  161. package/dist/types-DwQJtrTx.d.mts +0 -104
  162. package/dist/utils-CNs3cyDj.js.map +0 -1
  163. package/dist/utils-DS04iUcX.mjs.map +0 -1
@@ -1,4 +1,4 @@
1
- import { _ as PwdProtectedEmail, b as User, h as PublicKeys, i as EmailKeys, o as EmailPublicParameters, p as PrivateKeys, t as Email, u as HybridEncryptedEmail, x as UserWithPublicKeys } from "./types-DwQJtrTx.mjs";
1
+ import { Email, EmailKeys, EmailPublicParameters, HybridEncryptedEmail, PrivateKeys, PublicKeys, PwdProtectedEmail, User, UserWithPublicKeys } from "./types.mjs";
2
2
 
3
3
  //#region src/email-crypto/hybridEncyptedEmail.d.ts
4
4
  /**
@@ -78,9 +78,6 @@ declare function generateEmailKeys(): Promise<EmailKeys>;
78
78
  * @returns The resulting auxiliary string
79
79
  */
80
80
  declare function getAux(params: EmailPublicParameters, isSubjectEncrypted: boolean): Uint8Array;
81
- declare namespace index_d_exports {
82
- export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, userToBytes };
83
- }
84
81
  //#endregion
85
- export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, index_d_exports as t, userToBytes };
82
+ export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, userToBytes };
86
83
  //# sourceMappingURL=email-crypto.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-crypto.d.mts","names":[],"sources":["../src/email-crypto/hybridEncyptedEmail.ts","../src/email-crypto/pwdProtectedEmail.ts","../src/email-crypto/converters.ts","../src/email-crypto/emailKeys.ts","../src/email-crypto/utils.ts"],"mappings":";;;;;AAYA;;;;;;;iBAAsB,kBAAA,CACpB,KAAA,EAAO,KAAA,EACP,SAAA,EAAW,kBAAA,EACX,gBAAA,EAAkB,WAAA,EAClB,kBAAA,aACC,OAAA,CAAQ,oBAAA;;;;;;;;;;iBAmBW,uCAAA,CACpB,KAAA,EAAO,KAAA,EACP,UAAA,EAAY,kBAAA,IACZ,gBAAA,EAAkB,WAAA,EAClB,kBAAA,aACC,OAAA,CAAQ,oBAAA;;;;AALX;;;;;iBAmCsB,kBAAA,CACpB,cAAA,EAAgB,oBAAA,EAChB,gBAAA,EAAkB,UAAA,EAClB,oBAAA,EAAsB,WAAA,GACrB,OAAA,CAAQ,KAAA;;;;;AA/DX;;;;;;iBCDsB,uBAAA,CACpB,KAAA,EAAO,KAAA,EACP,QAAA,UACA,kBAAA,aACC,OAAA,CAAQ,iBAAA;;;;;;;;iBAqBW,wBAAA,CAAyB,cAAA,EAAgB,iBAAA,EAAmB,QAAA,WAAmB,OAAA,CAAQ,KAAA;;;iBChC7F,WAAA,CAAY,IAAA,EAAM,IAAA,GAAO,UAAA;AAAA,iBASzB,iBAAA,CAAkB,UAAA,EAAY,IAAA,KAAS,UAAA;AFDvD;;;;;;AAAA,iBEgBgB,aAAA,CAAc,KAAA,EAAO,KAAA,GAAQ,UAAA;;;;;AFhB7C;;;iBGHsB,iBAAA,CAAA,GAAqB,OAAA,CAAQ,SAAA;;;;;AHGnD;;;;;iBIAgB,MAAA,CAAO,MAAA,EAAQ,qBAAA,EAAuB,kBAAA,YAA8B,UAAA"}
@@ -1,4 +1,4 @@
1
- import { _ as PwdProtectedEmail, b as User, h as PublicKeys, i as EmailKeys, o as EmailPublicParameters, p as PrivateKeys, t as Email, u as HybridEncryptedEmail, x as UserWithPublicKeys } from "./types-Ds3ivE9W.js";
1
+ import { Email, EmailKeys, EmailPublicParameters, HybridEncryptedEmail, PrivateKeys, PublicKeys, PwdProtectedEmail, User, UserWithPublicKeys } from "./types.js";
2
2
 
3
3
  //#region src/email-crypto/hybridEncyptedEmail.d.ts
4
4
  /**
@@ -78,9 +78,6 @@ declare function generateEmailKeys(): Promise<EmailKeys>;
78
78
  * @returns The resulting auxiliary string
79
79
  */
80
80
  declare function getAux(params: EmailPublicParameters, isSubjectEncrypted: boolean): Uint8Array;
81
- declare namespace index_d_exports {
82
- export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, userToBytes };
83
- }
84
81
  //#endregion
85
- export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, index_d_exports as t, userToBytes };
82
+ export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, userToBytes };
86
83
  //# sourceMappingURL=email-crypto.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-crypto.d.ts","names":[],"sources":["../src/email-crypto/hybridEncyptedEmail.ts","../src/email-crypto/pwdProtectedEmail.ts","../src/email-crypto/converters.ts","../src/email-crypto/emailKeys.ts","../src/email-crypto/utils.ts"],"mappings":";;;;;AAYA;;;;;;;iBAAsB,kBAAA,CACpB,KAAA,EAAO,KAAA,EACP,SAAA,EAAW,kBAAA,EACX,gBAAA,EAAkB,WAAA,EAClB,kBAAA,aACC,OAAA,CAAQ,oBAAA;;;;;;;;;;iBAmBW,uCAAA,CACpB,KAAA,EAAO,KAAA,EACP,UAAA,EAAY,kBAAA,IACZ,gBAAA,EAAkB,WAAA,EAClB,kBAAA,aACC,OAAA,CAAQ,oBAAA;;;;AALX;;;;;iBAmCsB,kBAAA,CACpB,cAAA,EAAgB,oBAAA,EAChB,gBAAA,EAAkB,UAAA,EAClB,oBAAA,EAAsB,WAAA,GACrB,OAAA,CAAQ,KAAA;;;;;AA/DX;;;;;;iBCDsB,uBAAA,CACpB,KAAA,EAAO,KAAA,EACP,QAAA,UACA,kBAAA,aACC,OAAA,CAAQ,iBAAA;;;;;;;;iBAqBW,wBAAA,CAAyB,cAAA,EAAgB,iBAAA,EAAmB,QAAA,WAAmB,OAAA,CAAQ,KAAA;;;iBChC7F,WAAA,CAAY,IAAA,EAAM,IAAA,GAAO,UAAA;AAAA,iBASzB,iBAAA,CAAkB,UAAA,EAAY,IAAA,KAAS,UAAA;AFDvD;;;;;;AAAA,iBEgBgB,aAAA,CAAc,KAAA,EAAO,KAAA,GAAQ,UAAA;;;;;AFhB7C;;;iBGHsB,iBAAA,CAAA,GAAqB,OAAA,CAAQ,SAAA;;;;;AHGnD;;;;;iBIAgB,MAAA,CAAO,MAAA,EAAQ,qBAAA,EAAuB,kBAAA,YAA8B,UAAA"}
@@ -1,17 +1,13 @@
1
- require('./utils-CNs3cyDj.js');
2
- require('./hash-BoqwNkcd.js');
3
- require('./symmetric-crypto-D65zB396.js');
4
- require('./derive-key-CBf2WxJd.js');
5
- require('./post-quantum-crypto-CAi-cEkV.js');
6
- const require_email_crypto = require('./email-crypto-BrT98taw.js');
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ const require_emailKeys = require('./emailKeys-C0KhtfNP.js');
7
3
 
8
- exports.createPwdProtectedEmail = require_email_crypto.createPwdProtectedEmail;
9
- exports.decryptEmailHybrid = require_email_crypto.decryptEmailHybrid;
10
- exports.decryptPwdProtectedEmail = require_email_crypto.decryptPwdProtectedEmail;
11
- exports.emailToBinary = require_email_crypto.emailToBinary;
12
- exports.encryptEmailHybrid = require_email_crypto.encryptEmailHybrid;
13
- exports.encryptEmailHybridForMultipleRecipients = require_email_crypto.encryptEmailHybridForMultipleRecipients;
14
- exports.generateEmailKeys = require_email_crypto.generateEmailKeys;
15
- exports.getAux = require_email_crypto.getAux;
16
- exports.recipientsToBytes = require_email_crypto.recipientsToBytes;
17
- exports.userToBytes = require_email_crypto.userToBytes;
4
+ exports.createPwdProtectedEmail = require_emailKeys.createPwdProtectedEmail;
5
+ exports.decryptEmailHybrid = require_emailKeys.decryptEmailHybrid;
6
+ exports.decryptPwdProtectedEmail = require_emailKeys.decryptPwdProtectedEmail;
7
+ exports.emailToBinary = require_emailKeys.emailToBinary;
8
+ exports.encryptEmailHybrid = require_emailKeys.encryptEmailHybrid;
9
+ exports.encryptEmailHybridForMultipleRecipients = require_emailKeys.encryptEmailHybridForMultipleRecipients;
10
+ exports.generateEmailKeys = require_emailKeys.generateEmailKeys;
11
+ exports.getAux = require_emailKeys.getAux;
12
+ exports.recipientsToBytes = require_emailKeys.recipientsToBytes;
13
+ exports.userToBytes = require_emailKeys.userToBytes;
@@ -1,8 +1,3 @@
1
- import "./utils-DS04iUcX.mjs";
2
- import "./hash-CXeGAwai.mjs";
3
- import "./symmetric-crypto-CrdS1Che.mjs";
4
- import "./derive-key-Be7hS-cN.mjs";
5
- import "./post-quantum-crypto-Vv34t6gX.mjs";
6
- import { a as decryptEmailHybrid, d as emailToBinary, f as recipientsToBytes, i as decryptPwdProtectedEmail, n as generateEmailKeys, o as encryptEmailHybrid, p as userToBytes, r as createPwdProtectedEmail, s as encryptEmailHybridForMultipleRecipients, u as getAux } from "./email-crypto-DJUEjTxA.mjs";
1
+ import { a as encryptEmailHybrid, d as recipientsToBytes, f as userToBytes, i as decryptEmailHybrid, l as getAux, n as createPwdProtectedEmail, o as encryptEmailHybridForMultipleRecipients, r as decryptPwdProtectedEmail, t as generateEmailKeys, u as emailToBinary } from "./emailKeys-D4lp9NRv.mjs";
7
2
 
8
3
  export { createPwdProtectedEmail, decryptEmailHybrid, decryptPwdProtectedEmail, emailToBinary, encryptEmailHybrid, encryptEmailHybridForMultipleRecipients, generateEmailKeys, getAux, recipientsToBytes, userToBytes };
@@ -1,4 +1,4 @@
1
- import { f as MailCache, s as EmailSearchResult, t as Email, y as StoredEmail } from "./types-DwQJtrTx.mjs";
1
+ import { Email, EmailSearchResult, MailCache, StoredEmail } from "./types.mjs";
2
2
  import { DBSchema, IDBPDatabase } from "idb";
3
3
  import { Index } from "flexsearch";
4
4
 
@@ -37,42 +37,42 @@ declare const deleteDatabase: (userID: string) => Promise<void>;
37
37
  * Derives database encryption key for the given user
38
38
  *
39
39
  * @param userID - The user ID
40
- * @returns The symmetric CryptoKey for protecting database
40
+ * @returns The symmetric key for protecting database
41
41
  */
42
- declare const deriveIndexKey: (baseKey: Uint8Array) => Promise<CryptoKey>;
42
+ declare const deriveIndexKey: (baseKey: Uint8Array) => Promise<Uint8Array>;
43
43
  /**
44
44
  * Encrypts the given email and stores it in the IndexedDB database
45
45
  *
46
46
  * @param newEmailToStore - The email for storing
47
- * @param indexKey - The symmetric CryptoKey key for protecting database
47
+ * @param indexKey - The symmetric key for protecting database
48
48
  * @param esDB - The database
49
49
  */
50
- declare const encryptAndStoreEmail: (newEmailToStore: Email, indexKey: CryptoKey, esDB: MailDB) => Promise<void>;
50
+ declare const encryptAndStoreEmail: (newEmailToStore: Email, indexKey: Uint8Array, esDB: MailDB) => Promise<void>;
51
51
  /**
52
52
  * Encrypts the given set of emails and stores it in the IndexedDB database
53
53
  *
54
54
  * @param newEmailsToStore - The set of emails for storing
55
- * @param indexKey - The symmetric CryptoKey key for protecting database
55
+ * @param indexKey - The symmetric key key for protecting database
56
56
  * @param esDB - The database
57
57
  */
58
- declare const encryptAndStoreManyEmail: (newEmailsToStore: Email[], indexKey: CryptoKey, esDB: MailDB) => Promise<void>;
58
+ declare const encryptAndStoreManyEmail: (newEmailsToStore: Email[], indexKey: Uint8Array, esDB: MailDB) => Promise<void>;
59
59
  /**
60
60
  * Fetches the email from the database and decrypts it
61
61
  *
62
62
  * @param emailID - The email identifier
63
- * @param indexKey - The symmetric CryptoKey key for protecting database
63
+ * @param indexKey - The symmetric key key for protecting database
64
64
  * @param encryptedEmail - The encrypted email
65
65
  * @returns The decrypted email
66
66
  */
67
- declare const getAndDecryptEmail: (emailID: string, indexKey: CryptoKey, esDB: MailDB) => Promise<Email>;
67
+ declare const getAndDecryptEmail: (emailID: string, indexKey: Uint8Array, esDB: MailDB) => Promise<Email>;
68
68
  /**
69
69
  * Fetches all email from the database and decrypts them
70
70
  *
71
- * @param indexKey - The symmetric CryptoKey key for protecting database
71
+ * @param indexKey - The symmetric key key for protecting database
72
72
  * @param esDB - The database
73
73
  * @returns The decrypted emails
74
74
  */
75
- declare const getAndDecryptAllEmails: (indexKey: CryptoKey, esDB: MailDB) => Promise<Email[]>;
75
+ declare const getAndDecryptAllEmails: (indexKey: Uint8Array, esDB: MailDB) => Promise<Email[]>;
76
76
  /**
77
77
  * Deletes the email from the database
78
78
  *
@@ -105,28 +105,28 @@ declare const enforceMaxEmailNumber: (esDB: MailDB, max: number) => Promise<void
105
105
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (newest first)
106
106
  *
107
107
  * @param esDB - The database
108
- * @param indexKey - The symmetric CryptoKey key for protecting database
108
+ * @param indexKey - The symmetric Uint8Array key for protecting database
109
109
  * @returns The number of stored emails
110
110
  */
111
- declare const getAllEmailsSortedNewestFirst: (esDB: MailDB, indexKey: CryptoKey) => Promise<Email[]>;
111
+ declare const getAllEmailsSortedNewestFirst: (esDB: MailDB, indexKey: Uint8Array) => Promise<Email[]>;
112
112
  /**
113
113
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (oldest first)
114
114
  *
115
115
  * @param esDB - The database
116
- * @param indexKey - The symmetric CryptoKey key for protecting database
116
+ * @param indexKey - The symmetric key for protecting database
117
117
  * @returns The number of stored emails
118
118
  */
119
- declare const getAllEmailsSortedOldestFirst: (esDB: MailDB, indexKey: CryptoKey) => Promise<Email[]>;
119
+ declare const getAllEmailsSortedOldestFirst: (esDB: MailDB, indexKey: Uint8Array) => Promise<Email[]>;
120
120
  /**
121
121
  * Fetches a batch of emails from the database, decrypts them and sortes the results based on the creation time (newest first)
122
122
  *
123
123
  * @param esDB - The database
124
- * @param indexKey - The symmetric CryptoKey key for protecting database
124
+ * @param indexKey - The symmetric key for protecting database
125
125
  * @param batchSize - The size of the batch
126
126
  * @param startCursor - The starting point (optional). If not given, starts from the beginning
127
127
  * @returns The number of stored emails
128
128
  */
129
- declare const getEmailBatch: (esDB: MailDB, indexKey: CryptoKey, batchSize: number, startCursor?: IDBValidKey) => Promise<{
129
+ declare const getEmailBatch: (esDB: MailDB, indexKey: Uint8Array, batchSize: number, startCursor?: IDBValidKey) => Promise<{
130
130
  emails: Email[];
131
131
  nextCursor?: IDBValidKey;
132
132
  }>;
@@ -135,11 +135,11 @@ declare const getEmailBatch: (esDB: MailDB, indexKey: CryptoKey, batchSize: numb
135
135
  /**
136
136
  * Fetches all emails from the database in batches and cahces them
137
137
  *
138
- * @param indexKey - The symmetric CryptoKey key for protecting database
138
+ * @param indexKey - The symmetric key for protecting database
139
139
  * @param esCache - The cache to add emails too
140
140
  * @param esDB - The database
141
141
  */
142
- declare const createCacheFromDB: (indexKey: CryptoKey, esDB: MailDB) => Promise<MailCache<Email>>;
142
+ declare const createCacheFromDB: (indexKey: Uint8Array, esDB: MailDB) => Promise<MailCache<Email>>;
143
143
  /**
144
144
  * Gets an email from the cache
145
145
  *
@@ -227,9 +227,6 @@ interface SearchOptions {
227
227
  * @returns The result of the email search (emails ans their corresponding result weights)
228
228
  */
229
229
  declare const searchEmails: (query: string, esCache: MailCache<Email>, searchIndex: EmailSearchIndex, options?: SearchOptions) => Promise<EmailSearchResult[]>;
230
- declare namespace index_d_exports {
231
- export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails };
232
- }
233
230
  //#endregion
234
- export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails, index_d_exports as t };
231
+ export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails };
235
232
  //# sourceMappingURL=email-search.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-search.d.mts","names":[],"sources":["../src/email-search/indexedDB.ts","../src/email-search/mailCache.ts","../src/email-search/search.ts"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { f as MailCache, s as EmailSearchResult, t as Email, y as StoredEmail } from "./types-Ds3ivE9W.js";
1
+ import { Email, EmailSearchResult, MailCache, StoredEmail } from "./types.js";
2
2
  import { DBSchema, IDBPDatabase } from "idb";
3
3
  import { Index } from "flexsearch";
4
4
 
@@ -37,42 +37,42 @@ declare const deleteDatabase: (userID: string) => Promise<void>;
37
37
  * Derives database encryption key for the given user
38
38
  *
39
39
  * @param userID - The user ID
40
- * @returns The symmetric CryptoKey for protecting database
40
+ * @returns The symmetric key for protecting database
41
41
  */
42
- declare const deriveIndexKey: (baseKey: Uint8Array) => Promise<CryptoKey>;
42
+ declare const deriveIndexKey: (baseKey: Uint8Array) => Promise<Uint8Array>;
43
43
  /**
44
44
  * Encrypts the given email and stores it in the IndexedDB database
45
45
  *
46
46
  * @param newEmailToStore - The email for storing
47
- * @param indexKey - The symmetric CryptoKey key for protecting database
47
+ * @param indexKey - The symmetric key for protecting database
48
48
  * @param esDB - The database
49
49
  */
50
- declare const encryptAndStoreEmail: (newEmailToStore: Email, indexKey: CryptoKey, esDB: MailDB) => Promise<void>;
50
+ declare const encryptAndStoreEmail: (newEmailToStore: Email, indexKey: Uint8Array, esDB: MailDB) => Promise<void>;
51
51
  /**
52
52
  * Encrypts the given set of emails and stores it in the IndexedDB database
53
53
  *
54
54
  * @param newEmailsToStore - The set of emails for storing
55
- * @param indexKey - The symmetric CryptoKey key for protecting database
55
+ * @param indexKey - The symmetric key key for protecting database
56
56
  * @param esDB - The database
57
57
  */
58
- declare const encryptAndStoreManyEmail: (newEmailsToStore: Email[], indexKey: CryptoKey, esDB: MailDB) => Promise<void>;
58
+ declare const encryptAndStoreManyEmail: (newEmailsToStore: Email[], indexKey: Uint8Array, esDB: MailDB) => Promise<void>;
59
59
  /**
60
60
  * Fetches the email from the database and decrypts it
61
61
  *
62
62
  * @param emailID - The email identifier
63
- * @param indexKey - The symmetric CryptoKey key for protecting database
63
+ * @param indexKey - The symmetric key key for protecting database
64
64
  * @param encryptedEmail - The encrypted email
65
65
  * @returns The decrypted email
66
66
  */
67
- declare const getAndDecryptEmail: (emailID: string, indexKey: CryptoKey, esDB: MailDB) => Promise<Email>;
67
+ declare const getAndDecryptEmail: (emailID: string, indexKey: Uint8Array, esDB: MailDB) => Promise<Email>;
68
68
  /**
69
69
  * Fetches all email from the database and decrypts them
70
70
  *
71
- * @param indexKey - The symmetric CryptoKey key for protecting database
71
+ * @param indexKey - The symmetric key key for protecting database
72
72
  * @param esDB - The database
73
73
  * @returns The decrypted emails
74
74
  */
75
- declare const getAndDecryptAllEmails: (indexKey: CryptoKey, esDB: MailDB) => Promise<Email[]>;
75
+ declare const getAndDecryptAllEmails: (indexKey: Uint8Array, esDB: MailDB) => Promise<Email[]>;
76
76
  /**
77
77
  * Deletes the email from the database
78
78
  *
@@ -105,28 +105,28 @@ declare const enforceMaxEmailNumber: (esDB: MailDB, max: number) => Promise<void
105
105
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (newest first)
106
106
  *
107
107
  * @param esDB - The database
108
- * @param indexKey - The symmetric CryptoKey key for protecting database
108
+ * @param indexKey - The symmetric Uint8Array key for protecting database
109
109
  * @returns The number of stored emails
110
110
  */
111
- declare const getAllEmailsSortedNewestFirst: (esDB: MailDB, indexKey: CryptoKey) => Promise<Email[]>;
111
+ declare const getAllEmailsSortedNewestFirst: (esDB: MailDB, indexKey: Uint8Array) => Promise<Email[]>;
112
112
  /**
113
113
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (oldest first)
114
114
  *
115
115
  * @param esDB - The database
116
- * @param indexKey - The symmetric CryptoKey key for protecting database
116
+ * @param indexKey - The symmetric key for protecting database
117
117
  * @returns The number of stored emails
118
118
  */
119
- declare const getAllEmailsSortedOldestFirst: (esDB: MailDB, indexKey: CryptoKey) => Promise<Email[]>;
119
+ declare const getAllEmailsSortedOldestFirst: (esDB: MailDB, indexKey: Uint8Array) => Promise<Email[]>;
120
120
  /**
121
121
  * Fetches a batch of emails from the database, decrypts them and sortes the results based on the creation time (newest first)
122
122
  *
123
123
  * @param esDB - The database
124
- * @param indexKey - The symmetric CryptoKey key for protecting database
124
+ * @param indexKey - The symmetric key for protecting database
125
125
  * @param batchSize - The size of the batch
126
126
  * @param startCursor - The starting point (optional). If not given, starts from the beginning
127
127
  * @returns The number of stored emails
128
128
  */
129
- declare const getEmailBatch: (esDB: MailDB, indexKey: CryptoKey, batchSize: number, startCursor?: IDBValidKey) => Promise<{
129
+ declare const getEmailBatch: (esDB: MailDB, indexKey: Uint8Array, batchSize: number, startCursor?: IDBValidKey) => Promise<{
130
130
  emails: Email[];
131
131
  nextCursor?: IDBValidKey;
132
132
  }>;
@@ -135,11 +135,11 @@ declare const getEmailBatch: (esDB: MailDB, indexKey: CryptoKey, batchSize: numb
135
135
  /**
136
136
  * Fetches all emails from the database in batches and cahces them
137
137
  *
138
- * @param indexKey - The symmetric CryptoKey key for protecting database
138
+ * @param indexKey - The symmetric key for protecting database
139
139
  * @param esCache - The cache to add emails too
140
140
  * @param esDB - The database
141
141
  */
142
- declare const createCacheFromDB: (indexKey: CryptoKey, esDB: MailDB) => Promise<MailCache<Email>>;
142
+ declare const createCacheFromDB: (indexKey: Uint8Array, esDB: MailDB) => Promise<MailCache<Email>>;
143
143
  /**
144
144
  * Gets an email from the cache
145
145
  *
@@ -227,9 +227,6 @@ interface SearchOptions {
227
227
  * @returns The result of the email search (emails ans their corresponding result weights)
228
228
  */
229
229
  declare const searchEmails: (query: string, esCache: MailCache<Email>, searchIndex: EmailSearchIndex, options?: SearchOptions) => Promise<EmailSearchResult[]>;
230
- declare namespace index_d_exports {
231
- export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails };
232
- }
233
230
  //#endregion
234
- export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails, index_d_exports as t };
231
+ export { EmailSearchIndex, EncryptedSearchDB, MailDB, SearchOptions, addEmailToCache, addEmailToSearchIndex, addEmailsToCache, buildSearchIndexFromCache, closeDatabase, createCacheFromDB, deleteDatabase, deleteEmail, deleteEmailFromCache, deleteOldestEmails, deriveIndexKey, encryptAndStoreEmail, encryptAndStoreManyEmail, enforceMaxEmailNumber, getAllEmailsSortedNewestFirst, getAllEmailsSortedOldestFirst, getAndDecryptAllEmails, getAndDecryptEmail, getEmailBatch, getEmailCount, getEmailFromCache, openDatabase, removeEmailFromSearchIndex, searchEmails };
235
232
  //# sourceMappingURL=email-search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"email-search.d.ts","names":[],"sources":["../src/email-search/indexedDB.ts","../src/email-search/mailCache.ts","../src/email-search/search.ts"],"mappings":"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"}
@@ -1,11 +1,8 @@
1
- const require_chunk = require('./chunk-Dt-PWiN7.js');
2
- const require_constants = require('./constants-Ccp21E03.js');
3
- require('./utils-CNs3cyDj.js');
4
- require('./hash-BoqwNkcd.js');
5
- require('./symmetric-crypto-D65zB396.js');
6
- const require_derive_key = require('./derive-key-CBf2WxJd.js');
7
- require('./post-quantum-crypto-CAi-cEkV.js');
8
- const require_email_crypto = require('./email-crypto-BrT98taw.js');
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
2
+ const require_chunk = require('./chunk-EbLFQX5m.js');
3
+ const require_constants = require('./constants.js');
4
+ const require_deriveKeysFromPassword = require('./deriveKeysFromPassword-BYaiSGKL.js');
5
+ const require_emailKeys = require('./emailKeys-C0KhtfNP.js');
9
6
  let idb = require("idb");
10
7
  let flexsearch = require("flexsearch");
11
8
 
@@ -55,23 +52,23 @@ const deleteDatabase = async (userID) => {
55
52
  * Derives database encryption key for the given user
56
53
  *
57
54
  * @param userID - The user ID
58
- * @returns The symmetric CryptoKey for protecting database
55
+ * @returns The symmetric key for protecting database
59
56
  */
60
57
  const deriveIndexKey = async (baseKey) => {
61
- return require_derive_key.deriveSymmetricCryptoKeyFromContext(require_constants.CONTEXT_INDEX, baseKey);
58
+ return require_deriveKeysFromPassword.deriveSymmetricKeyFromContext(require_constants.CONTEXT_INDEX, baseKey);
62
59
  };
63
60
  /**
64
61
  * Encrypts the given email and stores it in the IndexedDB database
65
62
  *
66
63
  * @param newEmailToStore - The email for storing
67
- * @param indexKey - The symmetric CryptoKey key for protecting database
64
+ * @param indexKey - The symmetric key for protecting database
68
65
  * @param esDB - The database
69
66
  */
70
67
  const encryptAndStoreEmail = async (newEmailToStore, indexKey, esDB) => {
71
68
  try {
72
- const aux = require_email_crypto.getAux(newEmailToStore.params, false);
69
+ const aux = require_emailKeys.getAux(newEmailToStore.params, false);
73
70
  const encryptedEmail = {
74
- enc: await require_email_crypto.encryptEmailContentSymmetricallyWithKey(newEmailToStore.body, indexKey, aux, newEmailToStore.id),
71
+ enc: await require_emailKeys.encryptEmailContentSymmetricallyWithKey(newEmailToStore.body, indexKey, aux, newEmailToStore.id),
75
72
  params: newEmailToStore.params,
76
73
  id: newEmailToStore.id
77
74
  };
@@ -84,15 +81,15 @@ const encryptAndStoreEmail = async (newEmailToStore, indexKey, esDB) => {
84
81
  * Encrypts the given set of emails and stores it in the IndexedDB database
85
82
  *
86
83
  * @param newEmailsToStore - The set of emails for storing
87
- * @param indexKey - The symmetric CryptoKey key for protecting database
84
+ * @param indexKey - The symmetric key key for protecting database
88
85
  * @param esDB - The database
89
86
  */
90
87
  const encryptAndStoreManyEmail = async (newEmailsToStore, indexKey, esDB) => {
91
88
  try {
92
89
  const encryptedEmails = await Promise.all(newEmailsToStore.map(async (email) => {
93
- const aux = require_email_crypto.getAux(email.params, false);
90
+ const aux = require_emailKeys.getAux(email.params, false);
94
91
  return {
95
- enc: await require_email_crypto.encryptEmailContentSymmetricallyWithKey(email.body, indexKey, aux, email.id),
92
+ enc: await require_emailKeys.encryptEmailContentSymmetricallyWithKey(email.body, indexKey, aux, email.id),
96
93
  params: email.params,
97
94
  id: email.id
98
95
  };
@@ -106,14 +103,14 @@ const encryptAndStoreManyEmail = async (newEmailsToStore, indexKey, esDB) => {
106
103
  /**
107
104
  * Decrypts the given email
108
105
  *
109
- * @param indexKey - The symmetric CryptoKey key for protecting database
106
+ * @param indexKey - The symmetric key key for protecting database
110
107
  * @param encryptedEmail - The encrypted email
111
108
  * @returns The decrypted email
112
109
  */
113
110
  const decryptEmail = async (indexKey, encryptedEmail) => {
114
111
  try {
115
112
  return {
116
- body: await require_email_crypto.decryptEmailSymmetrically(indexKey, require_email_crypto.getAux(encryptedEmail.params, false), encryptedEmail.enc),
113
+ body: await require_emailKeys.decryptEmailSymmetrically(indexKey, require_emailKeys.getAux(encryptedEmail.params, false), encryptedEmail.enc),
117
114
  params: encryptedEmail.params,
118
115
  id: encryptedEmail.id
119
116
  };
@@ -125,7 +122,7 @@ const decryptEmail = async (indexKey, encryptedEmail) => {
125
122
  * Fetches the email from the database and decrypts it
126
123
  *
127
124
  * @param emailID - The email identifier
128
- * @param indexKey - The symmetric CryptoKey key for protecting database
125
+ * @param indexKey - The symmetric key key for protecting database
129
126
  * @param encryptedEmail - The encrypted email
130
127
  * @returns The decrypted email
131
128
  */
@@ -141,7 +138,7 @@ const getAndDecryptEmail = async (emailID, indexKey, esDB) => {
141
138
  /**
142
139
  * Fetches all email from the database and decrypts them
143
140
  *
144
- * @param indexKey - The symmetric CryptoKey key for protecting database
141
+ * @param indexKey - The symmetric key key for protecting database
145
142
  * @param esDB - The database
146
143
  * @returns The decrypted emails
147
144
  */
@@ -150,7 +147,7 @@ const getAndDecryptAllEmails = async (indexKey, esDB) => {
150
147
  const encryptedEmails = await esDB.getAll(require_constants.DB_LABEL);
151
148
  return (await Promise.all(encryptedEmails.map(async (encEmail) => {
152
149
  return {
153
- body: await require_email_crypto.decryptEmailSymmetrically(indexKey, require_email_crypto.getAux(encEmail.params, false), encEmail.enc),
150
+ body: await require_emailKeys.decryptEmailSymmetrically(indexKey, require_emailKeys.getAux(encEmail.params, false), encEmail.enc),
154
151
  params: encEmail.params,
155
152
  id: encEmail.id
156
153
  };
@@ -217,7 +214,7 @@ const enforceMaxEmailNumber = async (esDB, max) => {
217
214
  * Fetches all emails from the database, decrypts them and sortes the results in the specified order
218
215
  *
219
216
  * @param esDB - The database
220
- * @param indexKey - The symmetric CryptoKey key for protecting database
217
+ * @param indexKey - The symmetric key key for protecting database
221
218
  * @param direction - The order of sorting. If 'next' - oldest first, if 'prev' - newest first
222
219
  * @returns Decryped emails in the specified order
223
220
  */
@@ -239,7 +236,7 @@ const fetchEmails = async (esDB, indexKey, direction) => {
239
236
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (newest first)
240
237
  *
241
238
  * @param esDB - The database
242
- * @param indexKey - The symmetric CryptoKey key for protecting database
239
+ * @param indexKey - The symmetric Uint8Array key for protecting database
243
240
  * @returns The number of stored emails
244
241
  */
245
242
  const getAllEmailsSortedNewestFirst = async (esDB, indexKey) => {
@@ -249,7 +246,7 @@ const getAllEmailsSortedNewestFirst = async (esDB, indexKey) => {
249
246
  * Fetches all emails from the database, decrypts them and sortes the results based on the creation time (oldest first)
250
247
  *
251
248
  * @param esDB - The database
252
- * @param indexKey - The symmetric CryptoKey key for protecting database
249
+ * @param indexKey - The symmetric key for protecting database
253
250
  * @returns The number of stored emails
254
251
  */
255
252
  const getAllEmailsSortedOldestFirst = async (esDB, indexKey) => {
@@ -259,7 +256,7 @@ const getAllEmailsSortedOldestFirst = async (esDB, indexKey) => {
259
256
  * Fetches a batch of emails from the database, decrypts them and sortes the results based on the creation time (newest first)
260
257
  *
261
258
  * @param esDB - The database
262
- * @param indexKey - The symmetric CryptoKey key for protecting database
259
+ * @param indexKey - The symmetric key for protecting database
263
260
  * @param batchSize - The size of the batch
264
261
  * @param startCursor - The starting point (optional). If not given, starts from the beginning
265
262
  * @returns The number of stored emails
@@ -299,7 +296,7 @@ const getEmailBatch = async (esDB, indexKey, batchSize, startCursor) => {
299
296
  * @returns The estimation of the email size
300
297
  */
301
298
  function sizeOfEmail(email) {
302
- return require_email_crypto.emailToBinary(email).byteLength;
299
+ return require_emailKeys.emailToBinary(email).byteLength;
303
300
  }
304
301
  /**
305
302
  * Creates an empty cache variable
@@ -317,7 +314,7 @@ function createEmptyCache() {
317
314
  /**
318
315
  * Fetches all emails from the database in batches and cahces them
319
316
  *
320
- * @param indexKey - The symmetric CryptoKey key for protecting database
317
+ * @param indexKey - The symmetric key for protecting database
321
318
  * @param esCache - The cache to add emails too
322
319
  * @param esDB - The database
323
320
  */
@@ -343,7 +340,7 @@ const createCacheFromDB = async (indexKey, esDB) => {
343
340
  }
344
341
  return esCache;
345
342
  } catch (error) {
346
- throw new Error(`Email caching failed: ${error}`);
343
+ throw new Error(`Email caching failed: ${error}`, { cause: error });
347
344
  }
348
345
  };
349
346
  /**
@@ -574,35 +571,6 @@ const searchEmails = async (query, esCache, searchIndex, options = {}) => {
574
571
  }
575
572
  };
576
573
 
577
- //#endregion
578
- //#region src/email-search/index.ts
579
- var email_search_exports = /* @__PURE__ */ require_chunk.__exportAll({
580
- addEmailToCache: () => addEmailToCache,
581
- addEmailToSearchIndex: () => addEmailToSearchIndex,
582
- addEmailsToCache: () => addEmailsToCache,
583
- buildSearchIndexFromCache: () => buildSearchIndexFromCache,
584
- closeDatabase: () => closeDatabase,
585
- createCacheFromDB: () => createCacheFromDB,
586
- deleteDatabase: () => deleteDatabase,
587
- deleteEmail: () => deleteEmail,
588
- deleteEmailFromCache: () => deleteEmailFromCache,
589
- deleteOldestEmails: () => deleteOldestEmails,
590
- deriveIndexKey: () => deriveIndexKey,
591
- encryptAndStoreEmail: () => encryptAndStoreEmail,
592
- encryptAndStoreManyEmail: () => encryptAndStoreManyEmail,
593
- enforceMaxEmailNumber: () => enforceMaxEmailNumber,
594
- getAllEmailsSortedNewestFirst: () => getAllEmailsSortedNewestFirst,
595
- getAllEmailsSortedOldestFirst: () => getAllEmailsSortedOldestFirst,
596
- getAndDecryptAllEmails: () => getAndDecryptAllEmails,
597
- getAndDecryptEmail: () => getAndDecryptEmail,
598
- getEmailBatch: () => getEmailBatch,
599
- getEmailCount: () => getEmailCount,
600
- getEmailFromCache: () => getEmailFromCache,
601
- openDatabase: () => openDatabase,
602
- removeEmailFromSearchIndex: () => removeEmailFromSearchIndex,
603
- searchEmails: () => searchEmails
604
- });
605
-
606
574
  //#endregion
607
575
  exports.addEmailToCache = addEmailToCache;
608
576
  exports.addEmailToSearchIndex = addEmailToSearchIndex;
@@ -615,12 +583,6 @@ exports.deleteEmail = deleteEmail;
615
583
  exports.deleteEmailFromCache = deleteEmailFromCache;
616
584
  exports.deleteOldestEmails = deleteOldestEmails;
617
585
  exports.deriveIndexKey = deriveIndexKey;
618
- Object.defineProperty(exports, 'email_search_exports', {
619
- enumerable: true,
620
- get: function () {
621
- return email_search_exports;
622
- }
623
- });
624
586
  exports.encryptAndStoreEmail = encryptAndStoreEmail;
625
587
  exports.encryptAndStoreManyEmail = encryptAndStoreManyEmail;
626
588
  exports.enforceMaxEmailNumber = enforceMaxEmailNumber;