cipher-kit 0.0.3 → 0.0.5

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 (40) hide show
  1. package/dist/chunk-65XPPPAR.cjs +216 -0
  2. package/dist/chunk-65XPPPAR.cjs.map +1 -0
  3. package/dist/chunk-F52DT5C4.js +70 -0
  4. package/dist/chunk-F52DT5C4.js.map +1 -0
  5. package/dist/chunk-IMSNCUFU.cjs +84 -0
  6. package/dist/chunk-IMSNCUFU.cjs.map +1 -0
  7. package/dist/chunk-PKIT6YQN.js +137 -0
  8. package/dist/chunk-PKIT6YQN.js.map +1 -0
  9. package/dist/chunk-RF735UV3.cjs +153 -0
  10. package/dist/chunk-RF735UV3.cjs.map +1 -0
  11. package/dist/{chunk-GYFL6RUD.js → chunk-UYBB4K56.js} +49 -43
  12. package/dist/chunk-UYBB4K56.js.map +1 -0
  13. package/dist/index.cjs +36 -76
  14. package/dist/index.d.cts +24 -3
  15. package/dist/index.d.ts +24 -3
  16. package/dist/index.js +3 -3
  17. package/dist/node.cjs +35 -19
  18. package/dist/node.d.cts +7 -8
  19. package/dist/node.d.ts +7 -8
  20. package/dist/node.js +2 -2
  21. package/dist/types-C7UlGfO2.d.cts +46 -0
  22. package/dist/types-C7UlGfO2.d.ts +46 -0
  23. package/dist/web-api.cjs +35 -19
  24. package/dist/web-api.d.cts +6 -7
  25. package/dist/web-api.d.ts +6 -7
  26. package/dist/web-api.js +2 -2
  27. package/package.json +1 -1
  28. package/dist/chunk-72PZBMQR.js +0 -48
  29. package/dist/chunk-72PZBMQR.js.map +0 -1
  30. package/dist/chunk-GYFL6RUD.js.map +0 -1
  31. package/dist/chunk-KFZLZJ2J.cjs +0 -209
  32. package/dist/chunk-KFZLZJ2J.cjs.map +0 -1
  33. package/dist/chunk-MMHTEI3Q.js +0 -125
  34. package/dist/chunk-MMHTEI3Q.js.map +0 -1
  35. package/dist/chunk-WB7F34SY.cjs +0 -140
  36. package/dist/chunk-WB7F34SY.cjs.map +0 -1
  37. package/dist/chunk-WD5FWRQ4.cjs +0 -58
  38. package/dist/chunk-WD5FWRQ4.cjs.map +0 -1
  39. package/dist/utils-D8fOvyw5.d.cts +0 -35
  40. package/dist/utils-D8fOvyw5.d.ts +0 -35
@@ -0,0 +1,153 @@
1
+ 'use strict';
2
+
3
+ var chunkIMSNCUFU_cjs = require('./chunk-IMSNCUFU.cjs');
4
+ var buffer = require('buffer');
5
+ var nodeCrypto = require('crypto');
6
+
7
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
8
+
9
+ var nodeCrypto__default = /*#__PURE__*/_interopDefault(nodeCrypto);
10
+
11
+ function encode(data, format = "utf8") {
12
+ try {
13
+ return chunkIMSNCUFU_cjs.$ok({ bytes: buffer.Buffer.from(data, format) });
14
+ } catch (error) {
15
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to encode data", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
16
+ }
17
+ }
18
+ function decode(data, format = "utf8") {
19
+ try {
20
+ return chunkIMSNCUFU_cjs.$ok(buffer.Buffer.from(data).toString(format));
21
+ } catch (error) {
22
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to decode data", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
23
+ }
24
+ }
25
+ function generateUuid() {
26
+ try {
27
+ return chunkIMSNCUFU_cjs.$ok(nodeCrypto__default.default.randomUUID());
28
+ } catch (error) {
29
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to generate UUID with Crypto NodeJS", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
30
+ }
31
+ }
32
+ function isNodeKey(key) {
33
+ return key instanceof nodeCrypto__default.default.KeyObject;
34
+ }
35
+ function hash(data) {
36
+ if (!chunkIMSNCUFU_cjs.$isStr(data)) {
37
+ return chunkIMSNCUFU_cjs.$err({ msg: "Empty data for hashing", desc: "Data must be a non-empty string" });
38
+ }
39
+ try {
40
+ const hashed = nodeCrypto__default.default.createHash("sha256").update(data).digest();
41
+ return decode(hashed, "base64url");
42
+ } catch (error) {
43
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to hash data with Crypto NodeJS", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
44
+ }
45
+ }
46
+ function createSecretKey(key) {
47
+ if (typeof key === "string") {
48
+ if (!chunkIMSNCUFU_cjs.$isStr(key, 1)) return chunkIMSNCUFU_cjs.$err({ msg: "Empty key for Crypto NodeJS", desc: "Invalid secret key" });
49
+ try {
50
+ const hashedKey = nodeCrypto__default.default.createHash("sha256").update(key).digest();
51
+ const secretKey = nodeCrypto__default.default.createSecretKey(hashedKey);
52
+ return chunkIMSNCUFU_cjs.$ok({ secretKey });
53
+ } catch (error) {
54
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to create secret key with Crypto NodeJS", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
55
+ }
56
+ }
57
+ if (!isNodeKey(key)) return chunkIMSNCUFU_cjs.$err({ msg: "Invalid secret key", desc: "Expected a crypto.KeyObject" });
58
+ return chunkIMSNCUFU_cjs.$ok({ secretKey: key });
59
+ }
60
+ function encrypt(data, secretKey) {
61
+ if (!chunkIMSNCUFU_cjs.$isStr(data)) {
62
+ return chunkIMSNCUFU_cjs.$err({ msg: "Empty data for encryption", desc: "Data must be a non-empty string" });
63
+ }
64
+ if (!isNodeKey(secretKey)) {
65
+ return chunkIMSNCUFU_cjs.$err({ msg: "Invalid encryption key", desc: "Expected a crypto.KeyObject" });
66
+ }
67
+ try {
68
+ const iv = nodeCrypto__default.default.randomBytes(12);
69
+ const cipher = nodeCrypto__default.default.createCipheriv(chunkIMSNCUFU_cjs.NODE_ALGORITHM, secretKey, iv);
70
+ const encrypted = buffer.Buffer.concat([cipher.update(data, "utf8"), cipher.final()]);
71
+ const tag = cipher.getAuthTag();
72
+ const { result: decodedIv, error: ivError } = decode(iv, "base64url");
73
+ const { result: decodedEncrypted, error: encryptedError } = decode(encrypted, "base64url");
74
+ const { result: decodedTag, error: tagError } = decode(tag, "base64url");
75
+ if (ivError || encryptedError || tagError) {
76
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to encode encrypted data", desc: "Encoding error" });
77
+ }
78
+ return chunkIMSNCUFU_cjs.$ok(`${decodedIv}.${decodedEncrypted}.${decodedTag}.`);
79
+ } catch (error) {
80
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to encrypt data with Crypto NodeJS", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
81
+ }
82
+ }
83
+ function decrypt(encrypted, secretKey) {
84
+ if (chunkIMSNCUFU_cjs.isInNodeEncryptionFormat(encrypted) === false) {
85
+ return chunkIMSNCUFU_cjs.$err({
86
+ msg: "Invalid encrypted data format",
87
+ desc: 'Encrypted data must be in the format "iv.encrypted.tag."'
88
+ });
89
+ }
90
+ const [iv, encryptedData, tag] = encrypted.split(".", 4);
91
+ if (!chunkIMSNCUFU_cjs.$isStr(iv, 1) || !chunkIMSNCUFU_cjs.$isStr(encryptedData, 1) || !chunkIMSNCUFU_cjs.$isStr(tag, 1)) {
92
+ return chunkIMSNCUFU_cjs.$err({
93
+ msg: "Invalid parameters for decryption",
94
+ desc: "IV, encrypted data, and tag must be non-empty strings"
95
+ });
96
+ }
97
+ if (!isNodeKey(secretKey)) {
98
+ return chunkIMSNCUFU_cjs.$err({ msg: "Invalid decryption key", desc: "Expected a crypto.KeyObject" });
99
+ }
100
+ const { bytes: ivBytes, error: ivError } = encode(iv, "base64url");
101
+ const { bytes: encryptedBytes, error: encryptedError } = encode(encryptedData, "base64url");
102
+ const { bytes: tagBytes, error: tagError } = encode(tag, "base64url");
103
+ if (ivError || encryptedError || tagError) {
104
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to encode IV or encrypted data", desc: "Encoding error" });
105
+ }
106
+ try {
107
+ const decipher = nodeCrypto__default.default.createDecipheriv(chunkIMSNCUFU_cjs.NODE_ALGORITHM, secretKey, ivBytes);
108
+ decipher.setAuthTag(tagBytes);
109
+ const decrypted = buffer.Buffer.concat([decipher.update(encryptedBytes), decipher.final()]);
110
+ return decode(decrypted, "utf8");
111
+ } catch (error) {
112
+ return chunkIMSNCUFU_cjs.$err({ msg: "Failed to decrypt data with Crypto NodeJS", desc: chunkIMSNCUFU_cjs.$stringifyError(error) });
113
+ }
114
+ }
115
+ function encryptObj(data, secretKey) {
116
+ const { result, error } = chunkIMSNCUFU_cjs.stringifyObj(data);
117
+ if (error) return chunkIMSNCUFU_cjs.$err(error);
118
+ return encrypt(result, secretKey);
119
+ }
120
+ function decryptObj(encrypted, secretKey) {
121
+ const { result, error } = decrypt(encrypted, secretKey);
122
+ if (error) return chunkIMSNCUFU_cjs.$err(error);
123
+ return chunkIMSNCUFU_cjs.parseToObj(result);
124
+ }
125
+
126
+ // src/node/export.ts
127
+ var export_exports = {};
128
+ chunkIMSNCUFU_cjs.__export(export_exports, {
129
+ createSecretKey: () => createSecretKey,
130
+ decode: () => decode,
131
+ decrypt: () => decrypt,
132
+ decryptObj: () => decryptObj,
133
+ encode: () => encode,
134
+ encrypt: () => encrypt,
135
+ encryptObj: () => encryptObj,
136
+ generateUuid: () => generateUuid,
137
+ hash: () => hash,
138
+ isNodeKey: () => isNodeKey
139
+ });
140
+
141
+ exports.createSecretKey = createSecretKey;
142
+ exports.decode = decode;
143
+ exports.decrypt = decrypt;
144
+ exports.decryptObj = decryptObj;
145
+ exports.encode = encode;
146
+ exports.encrypt = encrypt;
147
+ exports.encryptObj = encryptObj;
148
+ exports.export_exports = export_exports;
149
+ exports.generateUuid = generateUuid;
150
+ exports.hash = hash;
151
+ exports.isNodeKey = isNodeKey;
152
+ //# sourceMappingURL=chunk-RF735UV3.cjs.map
153
+ //# sourceMappingURL=chunk-RF735UV3.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/node/encode.ts","../src/node/encrypt.ts","../src/node/export.ts"],"names":["$ok","Buffer","$err","$stringifyError","nodeCrypto","$isStr","NODE_ALGORITHM","isInNodeEncryptionFormat","stringifyObj","parseToObj","__export"],"mappings":"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","file":"chunk-RF735UV3.cjs","sourcesContent":["import { Buffer } from 'node:buffer';\r\nimport { $err, $ok, $stringifyError, type Result } from '~/error';\r\nimport type { EncodingFormat } from '~/types';\r\n\r\nexport function encode(data: string, format: EncodingFormat = 'utf8'): Result<{ bytes: Buffer }> {\r\n try {\r\n return $ok({ bytes: Buffer.from(data, format) });\r\n } catch (error) {\r\n return $err({ msg: 'Failed to encode data', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function decode(data: Buffer, format: EncodingFormat = 'utf8'): Result<string> {\r\n try {\r\n return $ok(Buffer.from(data).toString(format));\r\n } catch (error) {\r\n return $err({ msg: 'Failed to decode data', desc: $stringifyError(error) });\r\n }\r\n}\r\n","import { Buffer } from 'node:buffer';\r\nimport nodeCrypto from 'node:crypto';\r\nimport { $err, $ok, $stringifyError, type Result } from '~/error';\r\nimport type { NodeKey } from '~/types';\r\nimport { $isStr, isInNodeEncryptionFormat, NODE_ALGORITHM, parseToObj, stringifyObj } from '~/utils';\r\nimport { decode, encode } from './encode';\r\n\r\nexport function generateUuid(): Result<string> {\r\n try {\r\n return $ok(nodeCrypto.randomUUID());\r\n } catch (error) {\r\n return $err({ msg: 'Failed to generate UUID with Crypto NodeJS', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function isNodeKey(key: unknown): key is nodeCrypto.KeyObject {\r\n return key instanceof nodeCrypto.KeyObject;\r\n}\r\n\r\nexport function hash(data: string): Result<string> {\r\n if (!$isStr(data)) {\r\n return $err({ msg: 'Empty data for hashing', desc: 'Data must be a non-empty string' });\r\n }\r\n\r\n try {\r\n const hashed = nodeCrypto.createHash('sha256').update(data).digest();\r\n return decode(hashed, 'base64url');\r\n } catch (error) {\r\n return $err({ msg: 'Failed to hash data with Crypto NodeJS', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function createSecretKey(key: string | NodeKey): Result<{ secretKey: NodeKey }> {\r\n if (typeof key === 'string') {\r\n if (!$isStr(key, 1)) return $err({ msg: 'Empty key for Crypto NodeJS', desc: 'Invalid secret key' });\r\n\r\n try {\r\n const hashedKey = nodeCrypto.createHash('sha256').update(key).digest();\r\n const secretKey = nodeCrypto.createSecretKey(hashedKey);\r\n return $ok({ secretKey });\r\n } catch (error) {\r\n return $err({ msg: 'Failed to create secret key with Crypto NodeJS', desc: $stringifyError(error) });\r\n }\r\n }\r\n\r\n if (!isNodeKey(key)) return $err({ msg: 'Invalid secret key', desc: 'Expected a crypto.KeyObject' });\r\n return $ok({ secretKey: key });\r\n}\r\n\r\nexport function encrypt(data: string, secretKey: NodeKey): Result<string> {\r\n if (!$isStr(data)) {\r\n return $err({ msg: 'Empty data for encryption', desc: 'Data must be a non-empty string' });\r\n }\r\n\r\n if (!isNodeKey(secretKey)) {\r\n return $err({ msg: 'Invalid encryption key', desc: 'Expected a crypto.KeyObject' });\r\n }\r\n\r\n try {\r\n const iv = nodeCrypto.randomBytes(12);\r\n const cipher = nodeCrypto.createCipheriv(NODE_ALGORITHM, secretKey, iv);\r\n const encrypted = Buffer.concat([cipher.update(data, 'utf8'), cipher.final()]);\r\n const tag = cipher.getAuthTag();\r\n\r\n const { result: decodedIv, error: ivError } = decode(iv, 'base64url');\r\n const { result: decodedEncrypted, error: encryptedError } = decode(encrypted, 'base64url');\r\n const { result: decodedTag, error: tagError } = decode(tag, 'base64url');\r\n if (ivError || encryptedError || tagError) {\r\n return $err({ msg: 'Failed to encode encrypted data', desc: 'Encoding error' });\r\n }\r\n\r\n return $ok(`${decodedIv}.${decodedEncrypted}.${decodedTag}.`);\r\n } catch (error) {\r\n return $err({ msg: 'Failed to encrypt data with Crypto NodeJS', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function decrypt(encrypted: string, secretKey: NodeKey): Result<string> {\r\n if (isInNodeEncryptionFormat(encrypted) === false) {\r\n return $err({\r\n msg: 'Invalid encrypted data format',\r\n desc: 'Encrypted data must be in the format \"iv.encrypted.tag.\"',\r\n });\r\n }\r\n\r\n const [iv, encryptedData, tag] = encrypted.split('.', 4);\r\n if (!$isStr(iv, 1) || !$isStr(encryptedData, 1) || !$isStr(tag, 1)) {\r\n return $err({\r\n msg: 'Invalid parameters for decryption',\r\n desc: 'IV, encrypted data, and tag must be non-empty strings',\r\n });\r\n }\r\n\r\n if (!isNodeKey(secretKey)) {\r\n return $err({ msg: 'Invalid decryption key', desc: 'Expected a crypto.KeyObject' });\r\n }\r\n\r\n const { bytes: ivBytes, error: ivError } = encode(iv, 'base64url');\r\n const { bytes: encryptedBytes, error: encryptedError } = encode(encryptedData, 'base64url');\r\n const { bytes: tagBytes, error: tagError } = encode(tag, 'base64url');\r\n if (ivError || encryptedError || tagError) {\r\n return $err({ msg: 'Failed to encode IV or encrypted data', desc: 'Encoding error' });\r\n }\r\n\r\n try {\r\n const decipher = nodeCrypto.createDecipheriv(NODE_ALGORITHM, secretKey, ivBytes);\r\n decipher.setAuthTag(tagBytes);\r\n\r\n const decrypted = Buffer.concat([decipher.update(encryptedBytes), decipher.final()]);\r\n return decode(decrypted, 'utf8');\r\n } catch (error) {\r\n return $err({ msg: 'Failed to decrypt data with Crypto NodeJS', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function encryptObj(data: Record<string, unknown>, secretKey: NodeKey): Result<string> {\r\n const { result, error } = stringifyObj(data);\r\n if (error) return $err(error);\r\n return encrypt(result, secretKey);\r\n}\r\n\r\nexport function decryptObj(encrypted: string, secretKey: NodeKey): Result<{ result: Record<string, unknown> }> {\r\n const { result, error } = decrypt(encrypted, secretKey);\r\n if (error) return $err(error);\r\n return parseToObj(result);\r\n}\r\n","export { decode, encode } from './encode';\r\nexport { createSecretKey, decrypt, decryptObj, encrypt, encryptObj, generateUuid, hash, isNodeKey } from './encrypt';\r\n"]}
@@ -1,4 +1,4 @@
1
- import { $err, $ok, $stringifyError, $isStr, ENCRYPTED_WEB_REGEX, $stringifyObj, $parseToObj } from './chunk-72PZBMQR.js';
1
+ import { __export, $isStr, $err, $stringifyError, $ok, stringifyObj, WEB_API_ALGORITHM, parseToObj, isInWebApiEncryptionFormat } from './chunk-F52DT5C4.js';
2
2
 
3
3
  // src/web/encode.ts
4
4
  var textEncoder = new TextEncoder();
@@ -15,13 +15,10 @@ function encode(data, format = "utf8") {
15
15
  case "utf8":
16
16
  return $ok({ bytes: textEncoder.encode(data) });
17
17
  default:
18
- return $err({
19
- message: `Unsupported encode format: ${format}`,
20
- description: "Use base64, base64url, hex, or utf8"
21
- });
18
+ return $err({ msg: `Unsupported encode format: ${format}`, desc: "Use base64, base64url, hex, or utf8" });
22
19
  }
23
20
  } catch (error) {
24
- return $err({ message: "Failed to encode data", description: $stringifyError(error) });
21
+ return $err({ msg: "Failed to encode data", desc: $stringifyError(error) });
25
22
  }
26
23
  }
27
24
  function decode(data, format = "utf8") {
@@ -37,13 +34,10 @@ function decode(data, format = "utf8") {
37
34
  case "utf8":
38
35
  return $ok(textDecoder.decode(bytes));
39
36
  default:
40
- return $err({
41
- message: `Unsupported decode format: ${format}`,
42
- description: "Use base64, base64url, hex, or utf8"
43
- });
37
+ return $err({ msg: `Unsupported decode format: ${format}`, desc: "Use base64, base64url, hex, or utf8" });
44
38
  }
45
39
  } catch (error) {
46
- return $err({ message: "Failed to decode data", description: $stringifyError(error) });
40
+ return $err({ msg: "Failed to decode data", desc: $stringifyError(error) });
47
41
  }
48
42
  }
49
43
  function $toBase64(bytes) {
@@ -85,23 +79,20 @@ function $fromHex(data) {
85
79
  return out;
86
80
  }
87
81
 
88
- // src/web/utils.ts
89
- function newUuid() {
82
+ // src/web/encrypt.ts
83
+ function generateUuid() {
90
84
  try {
91
85
  return $ok(crypto.randomUUID());
92
86
  } catch (error) {
93
- return $err({ message: "Failed to generate UUID with Crypto Web API", description: $stringifyError(error) });
87
+ return $err({ msg: "Failed to generate UUID with Crypto Web API", desc: $stringifyError(error) });
94
88
  }
95
89
  }
96
- function $isWebApiKey(key) {
90
+ function isWebApiKey(key) {
97
91
  return key !== null && key !== void 0 && typeof key === "object" && "type" in key && typeof key.type === "string" && "algorithm" in key && typeof key.algorithm === "object" && "extractable" in key && typeof key.extractable === "boolean" && "usages" in key && Array.isArray(key.usages) && key.usages.every((usage) => typeof usage === "string");
98
92
  }
99
-
100
- // src/web/encrypt.ts
101
- var WEB_API_ALGORITHM = "AES-GCM";
102
93
  async function hash(data) {
103
94
  if (!$isStr(data)) {
104
- return $err({ message: "Empty data for hashing", description: "Data must be a non-empty string" });
95
+ return $err({ msg: "Empty data for hashing", desc: "Data must be a non-empty string" });
105
96
  }
106
97
  const { bytes, error } = encode(data, "utf8");
107
98
  if (error) return $err(error);
@@ -109,12 +100,12 @@ async function hash(data) {
109
100
  const hashed = await crypto.subtle.digest("SHA-256", bytes);
110
101
  return decode(hashed, "base64url");
111
102
  } catch (error2) {
112
- return $err({ message: "Failed to hash data with Crypto Web API", description: $stringifyError(error2) });
103
+ return $err({ msg: "Failed to hash data with Crypto Web API", desc: $stringifyError(error2) });
113
104
  }
114
105
  }
115
- async function newSecretKey(key) {
106
+ async function createSecretKey(key) {
116
107
  if (typeof key === "string") {
117
- if (!$isStr(key, 1)) return $err({ message: "Empty key for Crypto Web API", description: "Invalid secret key" });
108
+ if (!$isStr(key, 1)) return $err({ msg: "Empty key for Crypto Web API", desc: "Invalid secret key" });
118
109
  const { bytes, error } = encode(key, "utf8");
119
110
  if (error) return $err(error);
120
111
  try {
@@ -125,18 +116,18 @@ async function newSecretKey(key) {
125
116
  ]);
126
117
  return $ok({ secretKey });
127
118
  } catch (error2) {
128
- return $err({ message: "Failed to create secret key with Crypto Web API", description: $stringifyError(error2) });
119
+ return $err({ msg: "Failed to create secret key with Crypto Web API", desc: $stringifyError(error2) });
129
120
  }
130
121
  }
131
- if (!$isWebApiKey(key)) return $err({ message: "Invalid secret key", description: "Expected a webcrypto.CryptoKey" });
122
+ if (!isWebApiKey(key)) return $err({ msg: "Invalid secret key", desc: "Expected a webcrypto.CryptoKey" });
132
123
  return $ok({ secretKey: key });
133
124
  }
134
125
  async function encrypt(data, secretKey) {
135
126
  if (!$isStr(data)) {
136
- return $err({ message: "Empty data for encryption", description: "Data must be a non-empty string" });
127
+ return $err({ msg: "Empty data for encryption", desc: "Data must be a non-empty string" });
137
128
  }
138
- if (!$isWebApiKey(secretKey)) {
139
- return $err({ message: "Invalid encryption key", description: "Expected a webcrypto.CryptoKey" });
129
+ if (!isWebApiKey(secretKey)) {
130
+ return $err({ msg: "Invalid encryption key", desc: "Expected a webcrypto.CryptoKey" });
140
131
  }
141
132
  const { bytes, error } = encode(data, "utf8");
142
133
  if (error) return $err(error);
@@ -146,53 +137,68 @@ async function encrypt(data, secretKey) {
146
137
  const { result: decodedIv, error: ivError } = decode(iv, "base64url");
147
138
  const { result: decodedEncrypted, error: encryptedError } = decode(encrypted, "base64url");
148
139
  if (ivError || encryptedError) {
149
- return $err({ message: "Failed to encode IV or encrypted data", description: "Encoding error" });
140
+ return $err({ msg: "Failed to encode IV or encrypted data", desc: "Encoding error" });
150
141
  }
151
142
  return $ok(`${decodedIv}.${decodedEncrypted}.`);
152
143
  } catch (error2) {
153
- return $err({ message: "Failed to encrypt data with Crypto Web API", description: $stringifyError(error2) });
144
+ return $err({ msg: "Failed to encrypt data with Crypto Web API", desc: $stringifyError(error2) });
154
145
  }
155
146
  }
156
147
  async function decrypt(encrypted, secretKey) {
157
- if (ENCRYPTED_WEB_REGEX.test(encrypted) === false) {
148
+ if (isInWebApiEncryptionFormat(encrypted) === false) {
158
149
  return $err({
159
- message: "Invalid encrypted data format",
160
- description: 'Data must be in the format "iv.encryptedWithTag."'
150
+ msg: "Invalid encrypted data format",
151
+ desc: 'Data must be in the format "iv.encryptedWithTag."'
161
152
  });
162
153
  }
163
154
  const [iv, encryptedWithTag] = encrypted.split(".", 3);
164
155
  if (!$isStr(iv, 1) || !$isStr(encryptedWithTag, 1)) {
165
156
  return $err({
166
- message: "Invalid parameters for decryption",
167
- description: "IV and encrypted data must be non-empty strings"
157
+ msg: "Invalid parameters for decryption",
158
+ desc: "IV and encrypted data must be non-empty strings"
168
159
  });
169
160
  }
170
- if (!$isWebApiKey(secretKey)) {
171
- return $err({ message: "Invalid decryption key", description: "Expected a webcrypto.CryptoKey" });
161
+ if (!isWebApiKey(secretKey)) {
162
+ return $err({ msg: "Invalid decryption key", desc: "Expected a webcrypto.CryptoKey" });
172
163
  }
173
164
  const { bytes: ivBytes, error: ivError } = encode(iv, "base64url");
174
165
  const { bytes: encryptedBytes, error: encryptedError } = encode(encryptedWithTag, "base64url");
175
166
  if (ivError || encryptedError) {
176
- return $err({ message: "Failed to encode IV or encrypted data", description: "Encoding error" });
167
+ return $err({ msg: "Failed to encode IV or encrypted data", desc: "Encoding error" });
177
168
  }
178
169
  try {
179
170
  const decrypted = await crypto.subtle.decrypt({ name: WEB_API_ALGORITHM, iv: ivBytes }, secretKey, encryptedBytes);
180
171
  return decode(decrypted, "utf8");
181
172
  } catch (error) {
182
- return $err({ message: "Failed to decrypt data with Crypto Web API", description: $stringifyError(error) });
173
+ return $err({ msg: "Failed to decrypt data with Crypto Web API", desc: $stringifyError(error) });
183
174
  }
184
175
  }
185
176
  async function encryptObj(data, secretKey) {
186
- const { result, error } = $stringifyObj(data);
177
+ const { result, error } = stringifyObj(data);
187
178
  if (error) return $err(error);
188
179
  return await encrypt(result, secretKey);
189
180
  }
190
181
  async function decryptObj(encrypted, secretKey) {
191
182
  const { result, error } = await decrypt(encrypted, secretKey);
192
183
  if (error) return $err(error);
193
- return $parseToObj(result);
184
+ return parseToObj(result);
194
185
  }
195
186
 
196
- export { WEB_API_ALGORITHM, decode, decrypt, decryptObj, encode, encrypt, encryptObj, hash, newSecretKey, newUuid };
197
- //# sourceMappingURL=chunk-GYFL6RUD.js.map
198
- //# sourceMappingURL=chunk-GYFL6RUD.js.map
187
+ // src/web/export.ts
188
+ var export_exports = {};
189
+ __export(export_exports, {
190
+ createSecretKey: () => createSecretKey,
191
+ decode: () => decode,
192
+ decrypt: () => decrypt,
193
+ decryptObj: () => decryptObj,
194
+ encode: () => encode,
195
+ encrypt: () => encrypt,
196
+ encryptObj: () => encryptObj,
197
+ generateUuid: () => generateUuid,
198
+ hash: () => hash,
199
+ isWebApiKey: () => isWebApiKey
200
+ });
201
+
202
+ export { createSecretKey, decode, decrypt, decryptObj, encode, encrypt, encryptObj, export_exports, generateUuid, hash, isWebApiKey };
203
+ //# sourceMappingURL=chunk-UYBB4K56.js.map
204
+ //# sourceMappingURL=chunk-UYBB4K56.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/web/encode.ts","../src/web/encrypt.ts","../src/web/export.ts"],"names":["error"],"mappings":";;;AAGA,IAAM,WAAA,GAAc,IAAI,WAAA,EAAY;AACpC,IAAM,WAAA,GAAc,IAAI,WAAA,EAAY;AAE7B,SAAS,MAAA,CAAO,IAAA,EAAc,MAAA,GAAyB,MAAA,EAAuC;AACnG,EAAA,IAAI;AACF,IAAA,QAAQ,MAAA;AAAQ,MACd,KAAK,QAAA;AACH,QAAA,OAAO,IAAI,EAAE,KAAA,EAAO,WAAA,CAAY,IAAI,GAAG,CAAA;AAAA,MACzC,KAAK,WAAA;AACH,QAAA,OAAO,IAAI,EAAE,KAAA,EAAO,cAAA,CAAe,IAAI,GAAG,CAAA;AAAA,MAC5C,KAAK,KAAA;AACH,QAAA,OAAO,IAAI,EAAE,KAAA,EAAO,QAAA,CAAS,IAAI,GAAG,CAAA;AAAA,MACtC,KAAK,MAAA;AACH,QAAA,OAAO,IAAI,EAAE,KAAA,EAAO,YAAY,MAAA,CAAO,IAAI,GAAG,CAAA;AAAA,MAChD;AACE,QAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,CAAA,2BAAA,EAA8B,MAAM,CAAA,CAAA,EAAI,IAAA,EAAM,uCAAuC,CAAA;AAAA;AAC5G,EACF,SAAS,KAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,uBAAA,EAAyB,MAAM,eAAA,CAAgB,KAAK,GAAG,CAAA;AAAA,EAC5E;AACF;AAEO,SAAS,MAAA,CAAO,IAAA,EAAgC,MAAA,GAAyB,MAAA,EAAwB;AACtG,EAAA,IAAI;AACF,IAAA,MAAM,QAAQ,IAAA,YAAgB,UAAA,GAAa,IAAA,GAAO,IAAI,WAAW,IAAI,CAAA;AACrE,IAAA,QAAQ,MAAA;AAAQ,MACd,KAAK,QAAA;AACH,QAAA,OAAO,GAAA,CAAI,SAAA,CAAU,KAAK,CAAC,CAAA;AAAA,MAC7B,KAAK,WAAA;AACH,QAAA,OAAO,GAAA,CAAI,YAAA,CAAa,KAAK,CAAC,CAAA;AAAA,MAChC,KAAK,KAAA;AACH,QAAA,OAAO,GAAA,CAAI,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,MAC1B,KAAK,MAAA;AACH,QAAA,OAAO,GAAA,CAAI,WAAA,CAAY,MAAA,CAAO,KAAK,CAAC,CAAA;AAAA,MACtC;AACE,QAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,CAAA,2BAAA,EAA8B,MAAM,CAAA,CAAA,EAAI,IAAA,EAAM,uCAAuC,CAAA;AAAA;AAC5G,EACF,SAAS,KAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,uBAAA,EAAyB,MAAM,eAAA,CAAgB,KAAK,GAAG,CAAA;AAAA,EAC5E;AACF;AAEA,SAAS,UAAU,KAAA,EAA2B;AAC5C,EAAA,IAAI,MAAA,GAAS,EAAA;AACb,EAAA,MAAM,SAAA,GAAY,KAAA;AAClB,EAAA,KAAA,IAAS,IAAI,CAAA,EAAG,CAAA,GAAI,KAAA,CAAM,MAAA,EAAQ,KAAK,SAAA,EAAW;AAChD,IAAA,MAAA,IAAU,MAAA,CAAO,aAAa,GAAG,KAAA,CAAM,SAAS,CAAA,EAAG,CAAA,GAAI,SAAS,CAAC,CAAA;AAAA,EACnE;AACA,EAAA,OAAO,KAAK,MAAM,CAAA;AACpB;AAEA,SAAS,YAAY,IAAA,EAA0B;AAC7C,EAAA,MAAM,MAAA,GAAS,KAAK,IAAI,CAAA;AACxB,EAAA,MAAM,MAAM,MAAA,CAAO,MAAA;AACnB,EAAA,MAAM,KAAA,GAAQ,IAAI,UAAA,CAAW,GAAG,CAAA;AAChC,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,GAAA,EAAK,CAAA,EAAA,EAAK;AAC5B,IAAA,KAAA,CAAM,CAAC,CAAA,GAAI,MAAA,CAAO,UAAA,CAAW,CAAC,CAAA;AAAA,EAChC;AACA,EAAA,OAAO,KAAA;AACT;AAEA,SAAS,aAAa,KAAA,EAA2B;AAC/C,EAAA,OAAO,SAAA,CAAU,KAAK,CAAA,CAAE,OAAA,CAAQ,KAAA,EAAO,GAAG,CAAA,CAAE,OAAA,CAAQ,KAAA,EAAO,GAAG,CAAA,CAAE,OAAA,CAAQ,OAAO,EAAE,CAAA;AACnF;AAEA,SAAS,eAAe,IAAA,EAA0B;AAChD,EAAA,IAAI,GAAA,GAAM,KAAK,OAAA,CAAQ,IAAA,EAAM,GAAG,CAAA,CAAE,OAAA,CAAQ,MAAM,GAAG,CAAA;AACnD,EAAA,MAAM,MAAA,GAAA,CAAU,CAAA,GAAK,GAAA,CAAI,MAAA,GAAS,CAAA,IAAM,CAAA;AACxC,EAAA,GAAA,IAAO,GAAA,CAAI,OAAO,MAAM,CAAA;AACxB,EAAA,OAAO,YAAY,GAAG,CAAA;AACxB;AAEA,SAAS,OAAO,KAAA,EAA2B;AACzC,EAAA,OAAO,MAAM,IAAA,CAAK,KAAK,CAAA,CACpB,GAAA,CAAI,CAAC,CAAA,KAAM,CAAA,CAAE,QAAA,CAAS,EAAE,EAAE,QAAA,CAAS,CAAA,EAAG,GAAG,CAAC,CAAA,CAC1C,KAAK,EAAE,CAAA;AACZ;AAEA,SAAS,SAAS,IAAA,EAA0B;AAC1C,EAAA,MAAM,KAAA,GAAQ,KAAK,UAAA,CAAW,IAAI,IAAI,IAAA,CAAK,KAAA,CAAM,CAAC,CAAA,GAAI,IAAA;AACtD,EAAA,IAAI,MAAM,MAAA,GAAS,CAAA,KAAM,GAAG,MAAM,IAAI,MAAM,oBAAoB,CAAA;AAChE,EAAA,MAAM,GAAA,GAAM,IAAI,UAAA,CAAW,KAAA,CAAM,SAAS,CAAC,CAAA;AAC3C,EAAA,KAAA,IAAS,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,GAAA,CAAI,QAAQ,CAAA,EAAA,EAAK;AACnC,IAAA,GAAA,CAAI,CAAC,CAAA,GAAI,MAAA,CAAO,QAAA,CAAS,KAAA,CAAM,KAAA,CAAM,CAAA,GAAI,CAAA,EAAG,CAAA,GAAI,CAAA,GAAI,CAAC,CAAA,EAAG,EAAE,CAAA;AAAA,EAC5D;AACA,EAAA,OAAO,GAAA;AACT;;;ACpFO,SAAS,YAAA,GAA+B;AAC7C,EAAA,IAAI;AACF,IAAA,OAAO,GAAA,CAAI,MAAA,CAAO,UAAA,EAAY,CAAA;AAAA,EAChC,SAAS,KAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,6CAAA,EAA+C,MAAM,eAAA,CAAgB,KAAK,GAAG,CAAA;AAAA,EAClG;AACF;AAEO,SAAS,YAAY,GAAA,EAAgC;AAC1D,EAAA,OACE,QAAQ,IAAA,IACR,GAAA,KAAQ,MAAA,IACR,OAAO,QAAQ,QAAA,IACf,MAAA,IAAU,GAAA,IACV,OAAO,IAAI,IAAA,KAAS,QAAA,IACpB,eAAe,GAAA,IACf,OAAO,IAAI,SAAA,KAAc,QAAA,IACzB,aAAA,IAAiB,GAAA,IACjB,OAAO,GAAA,CAAI,WAAA,KAAgB,aAC3B,QAAA,IAAY,GAAA,IACZ,MAAM,OAAA,CAAQ,GAAA,CAAI,MAAM,CAAA,IACxB,IAAI,MAAA,CAAO,KAAA,CAAM,CAAC,KAAA,KAAU,OAAO,UAAU,QAAQ,CAAA;AAEzD;AAEA,eAAsB,KAAK,IAAA,EAAuC;AAChE,EAAA,IAAI,CAAC,MAAA,CAAO,IAAI,CAAA,EAAG;AACjB,IAAA,OAAO,KAAK,EAAE,GAAA,EAAK,wBAAA,EAA0B,IAAA,EAAM,mCAAmC,CAAA;AAAA,EACxF;AAEA,EAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,MAAA,CAAO,MAAM,MAAM,CAAA;AAC5C,EAAA,IAAI,KAAA,EAAO,OAAO,IAAA,CAAK,KAAK,CAAA;AAE5B,EAAA,IAAI;AACF,IAAA,MAAM,SAAS,MAAM,MAAA,CAAO,MAAA,CAAO,MAAA,CAAO,WAAW,KAAK,CAAA;AAC1D,IAAA,OAAO,MAAA,CAAO,QAAQ,WAAW,CAAA;AAAA,EACnC,SAASA,MAAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,yCAAA,EAA2C,MAAM,eAAA,CAAgBA,MAAK,GAAG,CAAA;AAAA,EAC9F;AACF;AAEA,eAAsB,gBAAgB,GAAA,EAAoE;AACxG,EAAA,IAAI,OAAO,QAAQ,QAAA,EAAU;AAC3B,IAAA,IAAI,CAAC,MAAA,CAAO,GAAA,EAAK,CAAC,CAAA,EAAG,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,8BAAA,EAAgC,IAAA,EAAM,oBAAA,EAAsB,CAAA;AAEpG,IAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,MAAA,CAAO,KAAK,MAAM,CAAA;AAC3C,IAAA,IAAI,KAAA,EAAO,OAAO,IAAA,CAAK,KAAK,CAAA;AAE5B,IAAA,IAAI;AACF,MAAA,MAAM,YAAY,MAAM,MAAA,CAAO,MAAA,CAAO,MAAA,CAAO,WAAW,KAAK,CAAA;AAC7D,MAAA,MAAM,SAAA,GAAY,MAAM,MAAA,CAAO,MAAA,CAAO,SAAA,CAAU,KAAA,EAAO,SAAA,EAAW,EAAE,IAAA,EAAM,iBAAA,EAAkB,EAAG,IAAA,EAAM;AAAA,QACnG,SAAA;AAAA,QACA;AAAA,OACD,CAAA;AACD,MAAA,OAAO,GAAA,CAAI,EAAE,SAAA,EAAW,CAAA;AAAA,IAC1B,SAASA,MAAAA,EAAO;AACd,MAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,iDAAA,EAAmD,MAAM,eAAA,CAAgBA,MAAK,GAAG,CAAA;AAAA,IACtG;AAAA,EACF;AAEA,EAAA,IAAI,CAAC,WAAA,CAAY,GAAG,CAAA,EAAG,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,oBAAA,EAAsB,IAAA,EAAM,gCAAA,EAAkC,CAAA;AACxG,EAAA,OAAO,GAAA,CAAI,EAAE,SAAA,EAAW,GAAA,EAAK,CAAA;AAC/B;AAEA,eAAsB,OAAA,CAAQ,MAAc,SAAA,EAA+C;AACzF,EAAA,IAAI,CAAC,MAAA,CAAO,IAAI,CAAA,EAAG;AACjB,IAAA,OAAO,KAAK,EAAE,GAAA,EAAK,2BAAA,EAA6B,IAAA,EAAM,mCAAmC,CAAA;AAAA,EAC3F;AAEA,EAAA,IAAI,CAAC,WAAA,CAAY,SAAS,CAAA,EAAG;AAC3B,IAAA,OAAO,KAAK,EAAE,GAAA,EAAK,wBAAA,EAA0B,IAAA,EAAM,kCAAkC,CAAA;AAAA,EACvF;AAEA,EAAA,MAAM,EAAE,KAAA,EAAO,KAAA,EAAM,GAAI,MAAA,CAAO,MAAM,MAAM,CAAA;AAC5C,EAAA,IAAI,KAAA,EAAO,OAAO,IAAA,CAAK,KAAK,CAAA;AAE5B,EAAA,IAAI;AACF,IAAA,MAAM,KAAK,MAAA,CAAO,eAAA,CAAgB,IAAI,UAAA,CAAW,EAAE,CAAC,CAAA;AACpD,IAAA,MAAM,SAAA,GAAY,MAAM,MAAA,CAAO,MAAA,CAAO,OAAA,CAAQ,EAAE,IAAA,EAAM,iBAAA,EAAmB,EAAA,EAAO,EAAG,SAAA,EAAW,KAAK,CAAA;AAEnG,IAAA,MAAM,EAAE,QAAQ,SAAA,EAAW,KAAA,EAAO,SAAQ,GAAI,MAAA,CAAO,IAAI,WAAW,CAAA;AACpE,IAAA,MAAM,EAAE,QAAQ,gBAAA,EAAkB,KAAA,EAAO,gBAAe,GAAI,MAAA,CAAO,WAAW,WAAW,CAAA;AAEzF,IAAA,IAAI,WAAW,cAAA,EAAgB;AAC7B,MAAA,OAAO,KAAK,EAAE,GAAA,EAAK,uCAAA,EAAyC,IAAA,EAAM,kBAAkB,CAAA;AAAA,IACtF;AAEA,IAAA,OAAO,GAAA,CAAI,CAAA,EAAG,SAAS,CAAA,CAAA,EAAI,gBAAgB,CAAA,CAAA,CAAG,CAAA;AAAA,EAChD,SAASA,MAAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,4CAAA,EAA8C,MAAM,eAAA,CAAgBA,MAAK,GAAG,CAAA;AAAA,EACjG;AACF;AAEA,eAAsB,OAAA,CAAQ,WAAmB,SAAA,EAA+C;AAC9F,EAAA,IAAI,0BAAA,CAA2B,SAAS,CAAA,KAAM,KAAA,EAAO;AACnD,IAAA,OAAO,IAAA,CAAK;AAAA,MACV,GAAA,EAAK,+BAAA;AAAA,MACL,IAAA,EAAM;AAAA,KACP,CAAA;AAAA,EACH;AAEA,EAAA,MAAM,CAAC,EAAA,EAAI,gBAAgB,IAAI,SAAA,CAAU,KAAA,CAAM,KAAK,CAAC,CAAA;AACrD,EAAA,IAAI,CAAC,OAAO,EAAA,EAAI,CAAC,KAAK,CAAC,MAAA,CAAO,gBAAA,EAAkB,CAAC,CAAA,EAAG;AAClD,IAAA,OAAO,IAAA,CAAK;AAAA,MACV,GAAA,EAAK,mCAAA;AAAA,MACL,IAAA,EAAM;AAAA,KACP,CAAA;AAAA,EACH;AAEA,EAAA,IAAI,CAAC,WAAA,CAAY,SAAS,CAAA,EAAG;AAC3B,IAAA,OAAO,KAAK,EAAE,GAAA,EAAK,wBAAA,EAA0B,IAAA,EAAM,kCAAkC,CAAA;AAAA,EACvF;AAEA,EAAA,MAAM,EAAE,OAAO,OAAA,EAAS,KAAA,EAAO,SAAQ,GAAI,MAAA,CAAO,IAAI,WAAW,CAAA;AACjE,EAAA,MAAM,EAAE,OAAO,cAAA,EAAgB,KAAA,EAAO,gBAAe,GAAI,MAAA,CAAO,kBAAkB,WAAW,CAAA;AAC7F,EAAA,IAAI,WAAW,cAAA,EAAgB;AAC7B,IAAA,OAAO,KAAK,EAAE,GAAA,EAAK,uCAAA,EAAyC,IAAA,EAAM,kBAAkB,CAAA;AAAA,EACtF;AAEA,EAAA,IAAI;AACF,IAAA,MAAM,SAAA,GAAY,MAAM,MAAA,CAAO,MAAA,CAAO,OAAA,CAAQ,EAAE,IAAA,EAAM,iBAAA,EAAmB,EAAA,EAAI,OAAA,EAAQ,EAAG,SAAA,EAAW,cAAc,CAAA;AAEjH,IAAA,OAAO,MAAA,CAAO,WAAW,MAAM,CAAA;AAAA,EACjC,SAAS,KAAA,EAAO;AACd,IAAA,OAAO,IAAA,CAAK,EAAE,GAAA,EAAK,4CAAA,EAA8C,MAAM,eAAA,CAAgB,KAAK,GAAG,CAAA;AAAA,EACjG;AACF;AAEA,eAAsB,UAAA,CAAW,MAA+B,SAAA,EAA+C;AAC7G,EAAA,MAAM,EAAE,MAAA,EAAQ,KAAA,EAAM,GAAI,aAAa,IAAI,CAAA;AAC3C,EAAA,IAAI,KAAA,EAAO,OAAO,IAAA,CAAK,KAAK,CAAA;AAC5B,EAAA,OAAO,MAAM,OAAA,CAAQ,MAAA,EAAQ,SAAS,CAAA;AACxC;AAEA,eAAsB,UAAA,CACpB,WACA,SAAA,EACsD;AACtD,EAAA,MAAM,EAAE,MAAA,EAAQ,KAAA,KAAU,MAAM,OAAA,CAAQ,WAAW,SAAS,CAAA;AAC5D,EAAA,IAAI,KAAA,EAAO,OAAO,IAAA,CAAK,KAAK,CAAA;AAC5B,EAAA,OAAO,WAAW,MAAM,CAAA;AAC1B;;;AClJA,IAAA,cAAA,GAAA;AAAA,QAAA,CAAA,cAAA,EAAA;AAAA,EAAA,eAAA,EAAA,MAAA,eAAA;AAAA,EAAA,MAAA,EAAA,MAAA,MAAA;AAAA,EAAA,OAAA,EAAA,MAAA,OAAA;AAAA,EAAA,UAAA,EAAA,MAAA,UAAA;AAAA,EAAA,MAAA,EAAA,MAAA,MAAA;AAAA,EAAA,OAAA,EAAA,MAAA,OAAA;AAAA,EAAA,UAAA,EAAA,MAAA,UAAA;AAAA,EAAA,YAAA,EAAA,MAAA,YAAA;AAAA,EAAA,IAAA,EAAA,MAAA,IAAA;AAAA,EAAA,WAAA,EAAA,MAAA;AAAA,CAAA,CAAA","file":"chunk-UYBB4K56.js","sourcesContent":["import { $err, $ok, $stringifyError, type Result } from '~/error';\r\nimport type { EncodingFormat } from '~/types';\r\n\r\nconst textEncoder = new TextEncoder();\r\nconst textDecoder = new TextDecoder();\r\n\r\nexport function encode(data: string, format: EncodingFormat = 'utf8'): Result<{ bytes: Uint8Array }> {\r\n try {\r\n switch (format) {\r\n case 'base64':\r\n return $ok({ bytes: $fromBase64(data) });\r\n case 'base64url':\r\n return $ok({ bytes: $fromBase64Url(data) });\r\n case 'hex':\r\n return $ok({ bytes: $fromHex(data) });\r\n case 'utf8':\r\n return $ok({ bytes: textEncoder.encode(data) });\r\n default:\r\n return $err({ msg: `Unsupported encode format: ${format}`, desc: 'Use base64, base64url, hex, or utf8' });\r\n }\r\n } catch (error) {\r\n return $err({ msg: 'Failed to encode data', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function decode(data: ArrayBuffer | Uint8Array, format: EncodingFormat = 'utf8'): Result<string> {\r\n try {\r\n const bytes = data instanceof Uint8Array ? data : new Uint8Array(data);\r\n switch (format) {\r\n case 'base64':\r\n return $ok($toBase64(bytes));\r\n case 'base64url':\r\n return $ok($toBase64Url(bytes));\r\n case 'hex':\r\n return $ok($toHex(bytes));\r\n case 'utf8':\r\n return $ok(textDecoder.decode(bytes));\r\n default:\r\n return $err({ msg: `Unsupported decode format: ${format}`, desc: 'Use base64, base64url, hex, or utf8' });\r\n }\r\n } catch (error) {\r\n return $err({ msg: 'Failed to decode data', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nfunction $toBase64(bytes: Uint8Array): string {\r\n let binary = '';\r\n const chunkSize = 0x8000; // 32KB per chunk\r\n for (let i = 0; i < bytes.length; i += chunkSize) {\r\n binary += String.fromCharCode(...bytes.subarray(i, i + chunkSize));\r\n }\r\n return btoa(binary);\r\n}\r\n\r\nfunction $fromBase64(data: string): Uint8Array {\r\n const binary = atob(data);\r\n const len = binary.length;\r\n const bytes = new Uint8Array(len);\r\n for (let i = 0; i < len; i++) {\r\n bytes[i] = binary.charCodeAt(i);\r\n }\r\n return bytes;\r\n}\r\n\r\nfunction $toBase64Url(bytes: Uint8Array): string {\r\n return $toBase64(bytes).replace(/\\+/g, '-').replace(/\\//g, '_').replace(/=+$/, '');\r\n}\r\n\r\nfunction $fromBase64Url(data: string): Uint8Array {\r\n let b64 = data.replace(/-/g, '+').replace(/_/g, '/');\r\n const padLen = (4 - (b64.length % 4)) % 4;\r\n b64 += '='.repeat(padLen);\r\n return $fromBase64(b64);\r\n}\r\n\r\nfunction $toHex(bytes: Uint8Array): string {\r\n return Array.from(bytes)\r\n .map((b) => b.toString(16).padStart(2, '0'))\r\n .join('');\r\n}\r\n\r\nfunction $fromHex(data: string): Uint8Array {\r\n const clean = data.startsWith('0x') ? data.slice(2) : data;\r\n if (clean.length % 2 !== 0) throw new Error('Invalid hex string');\r\n const out = new Uint8Array(clean.length / 2);\r\n for (let i = 0; i < out.length; i++) {\r\n out[i] = Number.parseInt(clean.slice(i * 2, i * 2 + 2), 16);\r\n }\r\n return out;\r\n}\r\n","import { $err, $ok, $stringifyError, type Result } from '~/error';\r\nimport type { WebApiKey } from '~/types';\r\nimport { $isStr, isInWebApiEncryptionFormat, parseToObj, stringifyObj, WEB_API_ALGORITHM } from '~/utils';\r\nimport { decode, encode } from './encode';\r\n\r\nexport function generateUuid(): Result<string> {\r\n try {\r\n return $ok(crypto.randomUUID());\r\n } catch (error) {\r\n return $err({ msg: 'Failed to generate UUID with Crypto Web API', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport function isWebApiKey(key: unknown): key is WebApiKey {\r\n return (\r\n key !== null &&\r\n key !== undefined &&\r\n typeof key === 'object' &&\r\n 'type' in key &&\r\n typeof key.type === 'string' &&\r\n 'algorithm' in key &&\r\n typeof key.algorithm === 'object' &&\r\n 'extractable' in key &&\r\n typeof key.extractable === 'boolean' &&\r\n 'usages' in key &&\r\n Array.isArray(key.usages) &&\r\n key.usages.every((usage) => typeof usage === 'string')\r\n );\r\n}\r\n\r\nexport async function hash(data: string): Promise<Result<string>> {\r\n if (!$isStr(data)) {\r\n return $err({ msg: 'Empty data for hashing', desc: 'Data must be a non-empty string' });\r\n }\r\n\r\n const { bytes, error } = encode(data, 'utf8');\r\n if (error) return $err(error);\r\n\r\n try {\r\n const hashed = await crypto.subtle.digest('SHA-256', bytes);\r\n return decode(hashed, 'base64url');\r\n } catch (error) {\r\n return $err({ msg: 'Failed to hash data with Crypto Web API', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport async function createSecretKey(key: string | WebApiKey): Promise<Result<{ secretKey: WebApiKey }>> {\r\n if (typeof key === 'string') {\r\n if (!$isStr(key, 1)) return $err({ msg: 'Empty key for Crypto Web API', desc: 'Invalid secret key' });\r\n\r\n const { bytes, error } = encode(key, 'utf8');\r\n if (error) return $err(error);\r\n\r\n try {\r\n const hashedKey = await crypto.subtle.digest('SHA-256', bytes);\r\n const secretKey = await crypto.subtle.importKey('raw', hashedKey, { name: WEB_API_ALGORITHM }, true, [\r\n 'encrypt',\r\n 'decrypt',\r\n ]);\r\n return $ok({ secretKey });\r\n } catch (error) {\r\n return $err({ msg: 'Failed to create secret key with Crypto Web API', desc: $stringifyError(error) });\r\n }\r\n }\r\n\r\n if (!isWebApiKey(key)) return $err({ msg: 'Invalid secret key', desc: 'Expected a webcrypto.CryptoKey' });\r\n return $ok({ secretKey: key });\r\n}\r\n\r\nexport async function encrypt(data: string, secretKey: WebApiKey): Promise<Result<string>> {\r\n if (!$isStr(data)) {\r\n return $err({ msg: 'Empty data for encryption', desc: 'Data must be a non-empty string' });\r\n }\r\n\r\n if (!isWebApiKey(secretKey)) {\r\n return $err({ msg: 'Invalid encryption key', desc: 'Expected a webcrypto.CryptoKey' });\r\n }\r\n\r\n const { bytes, error } = encode(data, 'utf8');\r\n if (error) return $err(error);\r\n\r\n try {\r\n const iv = crypto.getRandomValues(new Uint8Array(12));\r\n const encrypted = await crypto.subtle.encrypt({ name: WEB_API_ALGORITHM, iv: iv }, secretKey, bytes);\r\n\r\n const { result: decodedIv, error: ivError } = decode(iv, 'base64url');\r\n const { result: decodedEncrypted, error: encryptedError } = decode(encrypted, 'base64url');\r\n\r\n if (ivError || encryptedError) {\r\n return $err({ msg: 'Failed to encode IV or encrypted data', desc: 'Encoding error' });\r\n }\r\n\r\n return $ok(`${decodedIv}.${decodedEncrypted}.`);\r\n } catch (error) {\r\n return $err({ msg: 'Failed to encrypt data with Crypto Web API', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport async function decrypt(encrypted: string, secretKey: WebApiKey): Promise<Result<string>> {\r\n if (isInWebApiEncryptionFormat(encrypted) === false) {\r\n return $err({\r\n msg: 'Invalid encrypted data format',\r\n desc: 'Data must be in the format \"iv.encryptedWithTag.\"',\r\n });\r\n }\r\n\r\n const [iv, encryptedWithTag] = encrypted.split('.', 3);\r\n if (!$isStr(iv, 1) || !$isStr(encryptedWithTag, 1)) {\r\n return $err({\r\n msg: 'Invalid parameters for decryption',\r\n desc: 'IV and encrypted data must be non-empty strings',\r\n });\r\n }\r\n\r\n if (!isWebApiKey(secretKey)) {\r\n return $err({ msg: 'Invalid decryption key', desc: 'Expected a webcrypto.CryptoKey' });\r\n }\r\n\r\n const { bytes: ivBytes, error: ivError } = encode(iv, 'base64url');\r\n const { bytes: encryptedBytes, error: encryptedError } = encode(encryptedWithTag, 'base64url');\r\n if (ivError || encryptedError) {\r\n return $err({ msg: 'Failed to encode IV or encrypted data', desc: 'Encoding error' });\r\n }\r\n\r\n try {\r\n const decrypted = await crypto.subtle.decrypt({ name: WEB_API_ALGORITHM, iv: ivBytes }, secretKey, encryptedBytes);\r\n\r\n return decode(decrypted, 'utf8');\r\n } catch (error) {\r\n return $err({ msg: 'Failed to decrypt data with Crypto Web API', desc: $stringifyError(error) });\r\n }\r\n}\r\n\r\nexport async function encryptObj(data: Record<string, unknown>, secretKey: WebApiKey): Promise<Result<string>> {\r\n const { result, error } = stringifyObj(data);\r\n if (error) return $err(error);\r\n return await encrypt(result, secretKey);\r\n}\r\n\r\nexport async function decryptObj(\r\n encrypted: string,\r\n secretKey: WebApiKey,\r\n): Promise<Result<{ result: Record<string, unknown> }>> {\r\n const { result, error } = await decrypt(encrypted, secretKey);\r\n if (error) return $err(error);\r\n return parseToObj(result);\r\n}\r\n","export { decode, encode } from './encode';\r\nexport { createSecretKey, decrypt, decryptObj, encrypt, encryptObj, generateUuid, hash, isWebApiKey } from './encrypt';\r\n"]}
package/dist/index.cjs CHANGED
@@ -1,130 +1,90 @@
1
1
  'use strict';
2
2
 
3
- var chunkWB7F34SY_cjs = require('./chunk-WB7F34SY.cjs');
4
- var chunkKFZLZJ2J_cjs = require('./chunk-KFZLZJ2J.cjs');
5
- var chunkWD5FWRQ4_cjs = require('./chunk-WD5FWRQ4.cjs');
3
+ var chunkRF735UV3_cjs = require('./chunk-RF735UV3.cjs');
4
+ var chunk65XPPPAR_cjs = require('./chunk-65XPPPAR.cjs');
5
+ var chunkIMSNCUFU_cjs = require('./chunk-IMSNCUFU.cjs');
6
6
 
7
7
 
8
8
 
9
- Object.defineProperty(exports, "NODE_ALGORITHM", {
9
+ Object.defineProperty(exports, "createSecretKey", {
10
10
  enumerable: true,
11
- get: function () { return chunkWB7F34SY_cjs.NODE_ALGORITHM; }
11
+ get: function () { return chunkRF735UV3_cjs.createSecretKey; }
12
12
  });
13
13
  Object.defineProperty(exports, "decode", {
14
14
  enumerable: true,
15
- get: function () { return chunkWB7F34SY_cjs.decode; }
15
+ get: function () { return chunkRF735UV3_cjs.decode; }
16
16
  });
17
17
  Object.defineProperty(exports, "decrypt", {
18
18
  enumerable: true,
19
- get: function () { return chunkWB7F34SY_cjs.decrypt; }
19
+ get: function () { return chunkRF735UV3_cjs.decrypt; }
20
20
  });
21
21
  Object.defineProperty(exports, "decryptObj", {
22
22
  enumerable: true,
23
- get: function () { return chunkWB7F34SY_cjs.decryptObj; }
23
+ get: function () { return chunkRF735UV3_cjs.decryptObj; }
24
24
  });
25
25
  Object.defineProperty(exports, "encode", {
26
26
  enumerable: true,
27
- get: function () { return chunkWB7F34SY_cjs.encode; }
27
+ get: function () { return chunkRF735UV3_cjs.encode; }
28
28
  });
29
29
  Object.defineProperty(exports, "encrypt", {
30
30
  enumerable: true,
31
- get: function () { return chunkWB7F34SY_cjs.encrypt; }
31
+ get: function () { return chunkRF735UV3_cjs.encrypt; }
32
32
  });
33
33
  Object.defineProperty(exports, "encryptObj", {
34
34
  enumerable: true,
35
- get: function () { return chunkWB7F34SY_cjs.encryptObj; }
36
- });
37
- Object.defineProperty(exports, "hash", {
38
- enumerable: true,
39
- get: function () { return chunkWB7F34SY_cjs.hash; }
40
- });
41
- Object.defineProperty(exports, "newNodeSecretKey", {
42
- enumerable: true,
43
- get: function () { return chunkWB7F34SY_cjs.newSecretKey; }
44
- });
45
- Object.defineProperty(exports, "newNodeUuid", {
46
- enumerable: true,
47
- get: function () { return chunkWB7F34SY_cjs.newUuid; }
48
- });
49
- Object.defineProperty(exports, "newSecretKey", {
50
- enumerable: true,
51
- get: function () { return chunkWB7F34SY_cjs.newSecretKey; }
52
- });
53
- Object.defineProperty(exports, "newUuid", {
54
- enumerable: true,
55
- get: function () { return chunkWB7F34SY_cjs.newUuid; }
35
+ get: function () { return chunkRF735UV3_cjs.encryptObj; }
56
36
  });
57
- Object.defineProperty(exports, "nodeDecode", {
37
+ Object.defineProperty(exports, "generateUuid", {
58
38
  enumerable: true,
59
- get: function () { return chunkWB7F34SY_cjs.decode; }
39
+ get: function () { return chunkRF735UV3_cjs.generateUuid; }
60
40
  });
61
- Object.defineProperty(exports, "nodeDecrypt", {
41
+ Object.defineProperty(exports, "hash", {
62
42
  enumerable: true,
63
- get: function () { return chunkWB7F34SY_cjs.decrypt; }
43
+ get: function () { return chunkRF735UV3_cjs.hash; }
64
44
  });
65
- Object.defineProperty(exports, "nodeDecryptObj", {
45
+ Object.defineProperty(exports, "isNodeKey", {
66
46
  enumerable: true,
67
- get: function () { return chunkWB7F34SY_cjs.decryptObj; }
47
+ get: function () { return chunkRF735UV3_cjs.isNodeKey; }
68
48
  });
69
- Object.defineProperty(exports, "nodeEncode", {
49
+ Object.defineProperty(exports, "node", {
70
50
  enumerable: true,
71
- get: function () { return chunkWB7F34SY_cjs.encode; }
51
+ get: function () { return chunkRF735UV3_cjs.export_exports; }
72
52
  });
73
- Object.defineProperty(exports, "nodeEncrypt", {
53
+ Object.defineProperty(exports, "web", {
74
54
  enumerable: true,
75
- get: function () { return chunkWB7F34SY_cjs.encrypt; }
55
+ get: function () { return chunk65XPPPAR_cjs.export_exports; }
76
56
  });
77
- Object.defineProperty(exports, "nodeEncryptObj", {
57
+ Object.defineProperty(exports, "ENCRYPTION_REGEX", {
78
58
  enumerable: true,
79
- get: function () { return chunkWB7F34SY_cjs.encryptObj; }
59
+ get: function () { return chunkIMSNCUFU_cjs.ENCRYPTION_REGEX; }
80
60
  });
81
- Object.defineProperty(exports, "nodeHash", {
61
+ Object.defineProperty(exports, "NODE_ALGORITHM", {
82
62
  enumerable: true,
83
- get: function () { return chunkWB7F34SY_cjs.hash; }
63
+ get: function () { return chunkIMSNCUFU_cjs.NODE_ALGORITHM; }
84
64
  });
85
65
  Object.defineProperty(exports, "WEB_API_ALGORITHM", {
86
66
  enumerable: true,
87
- get: function () { return chunkKFZLZJ2J_cjs.WEB_API_ALGORITHM; }
88
- });
89
- Object.defineProperty(exports, "newWebSecretKey", {
90
- enumerable: true,
91
- get: function () { return chunkKFZLZJ2J_cjs.newSecretKey; }
92
- });
93
- Object.defineProperty(exports, "newWebUuid", {
94
- enumerable: true,
95
- get: function () { return chunkKFZLZJ2J_cjs.newUuid; }
96
- });
97
- Object.defineProperty(exports, "webDecode", {
98
- enumerable: true,
99
- get: function () { return chunkKFZLZJ2J_cjs.decode; }
100
- });
101
- Object.defineProperty(exports, "webDecrypt", {
102
- enumerable: true,
103
- get: function () { return chunkKFZLZJ2J_cjs.decrypt; }
104
- });
105
- Object.defineProperty(exports, "webEncode", {
106
- enumerable: true,
107
- get: function () { return chunkKFZLZJ2J_cjs.encode; }
67
+ get: function () { return chunkIMSNCUFU_cjs.WEB_API_ALGORITHM; }
108
68
  });
109
- Object.defineProperty(exports, "webEncrypt", {
69
+ Object.defineProperty(exports, "isInEncryptionFormat", {
110
70
  enumerable: true,
111
- get: function () { return chunkKFZLZJ2J_cjs.encrypt; }
71
+ get: function () { return chunkIMSNCUFU_cjs.isInEncryptionFormat; }
112
72
  });
113
- Object.defineProperty(exports, "webHash", {
73
+ Object.defineProperty(exports, "isInNodeEncryptionFormat", {
114
74
  enumerable: true,
115
- get: function () { return chunkKFZLZJ2J_cjs.hash; }
75
+ get: function () { return chunkIMSNCUFU_cjs.isInNodeEncryptionFormat; }
116
76
  });
117
- Object.defineProperty(exports, "ENCRYPTED_NODE_REGEX", {
77
+ Object.defineProperty(exports, "isInWebApiEncryptionFormat", {
118
78
  enumerable: true,
119
- get: function () { return chunkWD5FWRQ4_cjs.ENCRYPTED_NODE_REGEX; }
79
+ get: function () { return chunkIMSNCUFU_cjs.isInWebApiEncryptionFormat; }
120
80
  });
121
- Object.defineProperty(exports, "ENCRYPTED_REGEX", {
81
+ Object.defineProperty(exports, "parseToObj", {
122
82
  enumerable: true,
123
- get: function () { return chunkWD5FWRQ4_cjs.ENCRYPTED_REGEX; }
83
+ get: function () { return chunkIMSNCUFU_cjs.parseToObj; }
124
84
  });
125
- Object.defineProperty(exports, "ENCRYPTED_WEB_REGEX", {
85
+ Object.defineProperty(exports, "stringifyObj", {
126
86
  enumerable: true,
127
- get: function () { return chunkWD5FWRQ4_cjs.ENCRYPTED_WEB_REGEX; }
87
+ get: function () { return chunkIMSNCUFU_cjs.stringifyObj; }
128
88
  });
129
89
  //# sourceMappingURL=index.cjs.map
130
90
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -1,5 +1,26 @@
1
- export { E as ENCRYPTED_NODE_REGEX, a as ENCRYPTED_REGEX, b as ENCRYPTED_WEB_REGEX, N as NodeKey, W as WebApiKey } from './utils-D8fOvyw5.cjs';
2
- export { NODE_ALGORITHM, decode, decrypt, decryptObj, encode, encrypt, encryptObj, hash, newSecretKey as newNodeSecretKey, newUuid as newNodeUuid, newSecretKey, newUuid, decode as nodeDecode, decrypt as nodeDecrypt, decryptObj as nodeDecryptObj, encode as nodeEncode, encrypt as nodeEncrypt, encryptObj as nodeEncryptObj, hash as nodeHash } from './node.cjs';
3
- export { WEB_API_ALGORITHM, newSecretKey as newWebSecretKey, newUuid as newWebUuid, decode as webDecode, decrypt as webDecrypt, encode as webEncode, encrypt as webEncrypt, hash as webHash } from './web-api.cjs';
1
+ export { E as ENCRYPTION_REGEX, N as NODE_ALGORITHM, c as NodeKey, W as WEB_API_ALGORITHM, d as WebApiKey, i as isInEncryptionFormat, a as isInNodeEncryptionFormat, b as isInWebApiEncryptionFormat, p as parseToObj, s as stringifyObj } from './types-C7UlGfO2.cjs';
2
+ import { createSecretKey, decode, decrypt, decryptObj, encode, encrypt, encryptObj, generateUuid, hash, isNodeKey } from './node.cjs';
3
+ import { createSecretKey as createSecretKey$1, decode as decode$1, decrypt as decrypt$1, decryptObj as decryptObj$1, encode as encode$1, encrypt as encrypt$1, encryptObj as encryptObj$1, generateUuid as generateUuid$1, hash as hash$1, isWebApiKey } from './web-api.cjs';
4
4
  import 'node:crypto';
5
5
  import 'node:buffer';
6
+
7
+ declare const _export$1_createSecretKey: typeof createSecretKey;
8
+ declare const _export$1_decode: typeof decode;
9
+ declare const _export$1_decrypt: typeof decrypt;
10
+ declare const _export$1_decryptObj: typeof decryptObj;
11
+ declare const _export$1_encode: typeof encode;
12
+ declare const _export$1_encrypt: typeof encrypt;
13
+ declare const _export$1_encryptObj: typeof encryptObj;
14
+ declare const _export$1_generateUuid: typeof generateUuid;
15
+ declare const _export$1_hash: typeof hash;
16
+ declare const _export$1_isNodeKey: typeof isNodeKey;
17
+ declare namespace _export$1 {
18
+ export { _export$1_createSecretKey as createSecretKey, _export$1_decode as decode, _export$1_decrypt as decrypt, _export$1_decryptObj as decryptObj, _export$1_encode as encode, _export$1_encrypt as encrypt, _export$1_encryptObj as encryptObj, _export$1_generateUuid as generateUuid, _export$1_hash as hash, _export$1_isNodeKey as isNodeKey };
19
+ }
20
+
21
+ declare const _export_isWebApiKey: typeof isWebApiKey;
22
+ declare namespace _export {
23
+ export { createSecretKey$1 as createSecretKey, decode$1 as decode, decrypt$1 as decrypt, decryptObj$1 as decryptObj, encode$1 as encode, encrypt$1 as encrypt, encryptObj$1 as encryptObj, generateUuid$1 as generateUuid, hash$1 as hash, _export_isWebApiKey as isWebApiKey };
24
+ }
25
+
26
+ export { createSecretKey, decode, decrypt, decryptObj, encode, encrypt, encryptObj, generateUuid, hash, isNodeKey, _export$1 as node, _export as web };