@rlvt/crypt 2.20.0 → 2.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
1
 
2
- > @rlvt/crypt@2.19.0 build /home/runner-17/_work/node-utils-monorepo/node-utils-monorepo/packages/crypt
2
+ > @rlvt/crypt@2.20.0 build /home/runner-6/_work/node-utils-monorepo/node-utils-monorepo/packages/crypt
3
3
  > tsc --project .
4
4
 
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [cache-v0.28.0] - 2026-03-26
2
+
3
+ ### ⚙️ Miscellaneous Tasks
4
+
5
+ - Repair typescript build (following vitest migrations) (#218) by Tchoupinax
6
+
7
+ ## [events-stream-v1.25.0] - 2026-03-26
8
+
9
+ ### ⚙️ Miscellaneous Tasks
10
+
11
+ - *(release)* @rlvt/crypt@2.20.0 [skip ci] by rlvt-bot
12
+
1
13
  ## [cache-v0.27.0] - 2026-03-26
2
14
 
3
15
  ### ⚙️ Miscellaneous Tasks
@@ -0,0 +1,2 @@
1
+ export declare const encrypt: (input: string, password: string) => string;
2
+ export declare const decrypt: (input: string, password: string) => string;
package/build/index.js ADDED
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.decrypt = exports.encrypt = void 0;
7
+ const node_crypto_1 = __importDefault(require("node:crypto"));
8
+ const generateKey = (password) => {
9
+ const cryptographicHash = node_crypto_1.default.createHash('md5');
10
+ cryptographicHash.update(password);
11
+ const key = cryptographicHash.digest('hex');
12
+ return key;
13
+ };
14
+ const generateInitializationVector = (password) => {
15
+ const cryptographicHash = node_crypto_1.default.createHash('md5');
16
+ // why `undefined` you would ask ? Simply because someone added a undefined
17
+ // variable long ago, so to be compatible we have no choice :)
18
+ cryptographicHash.update(`${password}undefined`);
19
+ const initializationVector = cryptographicHash.digest('hex');
20
+ return initializationVector;
21
+ };
22
+ const IV_LENGTH = 16;
23
+ const SLICE_START = 0;
24
+ const encrypt = (input, password) => {
25
+ const key = generateKey(password);
26
+ const initializationVector = generateInitializationVector(password);
27
+ const data = Buffer.from(input, 'utf8').toString('binary');
28
+ const cipher = node_crypto_1.default.createCipheriv('aes-256-cbc', key, initializationVector.slice(SLICE_START, IV_LENGTH));
29
+ let encrypted = cipher.update(data, 'utf8', 'hex');
30
+ encrypted += cipher.final('hex');
31
+ const encoded = Buffer.from(encrypted, 'binary').toString('base64');
32
+ return encoded;
33
+ };
34
+ exports.encrypt = encrypt;
35
+ const decrypt = (input, password) => {
36
+ const key = generateKey(password);
37
+ const initializationVector = generateInitializationVector(password);
38
+ const inputReplaced = input.replace(/-/g, '+').replace(/_/g, '/');
39
+ const data = Buffer.from(inputReplaced, 'base64').toString('binary');
40
+ const decipher = node_crypto_1.default.createDecipheriv('aes-256-cbc', key, initializationVector.slice(SLICE_START, IV_LENGTH));
41
+ let decrypted = decipher.update(data, 'hex', 'utf8');
42
+ decrypted += decipher.final('utf8');
43
+ const decoded = Buffer.from(decrypted, 'binary').toString('utf8');
44
+ return decoded;
45
+ };
46
+ exports.decrypt = decrypt;
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsOERBQWdDO0FBRWhDLE1BQU0sV0FBVyxHQUFHLENBQUMsUUFBZ0IsRUFBRSxFQUFFO0lBQ3ZDLE1BQU0saUJBQWlCLEdBQUcscUJBQU0sQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUE7SUFDbEQsaUJBQWlCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2xDLE1BQU0sR0FBRyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUMzQyxPQUFPLEdBQUcsQ0FBQTtBQUNaLENBQUMsQ0FBQTtBQUVELE1BQU0sNEJBQTRCLEdBQUcsQ0FBQyxRQUFnQixFQUFFLEVBQUU7SUFDeEQsTUFBTSxpQkFBaUIsR0FBRyxxQkFBTSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUNsRCwyRUFBMkU7SUFDM0UsOERBQThEO0lBRTlELGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxHQUFHLFFBQVEsV0FBVyxDQUFDLENBQUE7SUFDaEQsTUFBTSxvQkFBb0IsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUE7SUFFNUQsT0FBTyxvQkFBb0IsQ0FBQTtBQUM3QixDQUFDLENBQUE7QUFFRCxNQUFNLFNBQVMsR0FBRyxFQUFFLENBQUE7QUFDcEIsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFBO0FBRWQsTUFBTSxPQUFPLEdBQUcsQ0FBQyxLQUFhLEVBQUUsUUFBZ0IsRUFBRSxFQUFFO0lBQ3pELE1BQU0sR0FBRyxHQUFHLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNqQyxNQUFNLG9CQUFvQixHQUFHLDRCQUE0QixDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBRW5FLE1BQU0sSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUUxRCxNQUFNLE1BQU0sR0FBRyxxQkFBTSxDQUFDLGNBQWMsQ0FDbEMsYUFBYSxFQUNiLEdBQUcsRUFDSCxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUNuRCxDQUFBO0lBQ0QsSUFBSSxTQUFTLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLEtBQUssQ0FBQyxDQUFBO0lBQ2xELFNBQVMsSUFBSSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ2hDLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQTtJQUNuRSxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDLENBQUE7QUFmWSxRQUFBLE9BQU8sV0FlbkI7QUFFTSxNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQWEsRUFBRSxRQUFnQixFQUFFLEVBQUU7SUFDekQsTUFBTSxHQUFHLEdBQUcsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFBO0lBQ2pDLE1BQU0sb0JBQW9CLEdBQUcsNEJBQTRCLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFbkUsTUFBTSxhQUFhLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQTtJQUNqRSxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLENBQUE7SUFFcEUsTUFBTSxRQUFRLEdBQUcscUJBQU0sQ0FBQyxnQkFBZ0IsQ0FDdEMsYUFBYSxFQUNiLEdBQUcsRUFDSCxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLFNBQVMsQ0FBQyxDQUNuRCxDQUFBO0lBQ0QsSUFBSSxTQUFTLEdBQUcsUUFBUSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQ3BELFNBQVMsSUFBSSxRQUFRLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ25DLE1BQU0sT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUVqRSxPQUFPLE9BQU8sQ0FBQTtBQUNoQixDQUFDLENBQUE7QUFqQlksUUFBQSxPQUFPLFdBaUJuQiJ9
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rlvt/crypt",
3
- "version": "2.20.0",
3
+ "version": "2.21.0",
4
4
  "author": "reelevant team <dev@reelevant.com>",
5
5
  "license": "UNLICENSED",
6
6
  "main": "build/index.js",
@@ -11,7 +11,7 @@
11
11
  "scripts": {
12
12
  "test": "vitest run",
13
13
  "build": "tsc --project .",
14
- "clean": "rm -rf build .turbo node_modules",
14
+ "clean": "rm -rf build .turbo node_modules coverage",
15
15
  "prepublish": "pnpm build",
16
16
  "lint": "prettier --write . && eslint --fix .",
17
17
  "lint:ci": "prettier --write . && eslint --fix . || true",
@@ -1,2 +0,0 @@
1
- declare const _default: import("vite").UserConfig;
2
- export default _default;
@@ -1,13 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const config_1 = require("vitest/config");
4
- exports.default = (0, config_1.defineConfig)({
5
- test: {
6
- coverage: {
7
- enabled: true,
8
- provider: 'v8',
9
- reporter: ['text', 'lcov', 'json-summary'],
10
- },
11
- },
12
- });
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZXN0LmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3ZpdGVzdC5jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwwQ0FBNEM7QUFFNUMsa0JBQWUsSUFBQSxxQkFBWSxFQUFDO0lBQzFCLElBQUksRUFBRTtRQUNKLFFBQVEsRUFBRTtZQUNSLE9BQU8sRUFBRSxJQUFJO1lBQ2IsUUFBUSxFQUFFLElBQUk7WUFDZCxRQUFRLEVBQUUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLGNBQWMsQ0FBQztTQUMzQztLQUNGO0NBQ0YsQ0FBQyxDQUFBIn0=