@sparted/shared-library 1.6.0 → 1.7.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.
@@ -0,0 +1,3 @@
1
+ declare function encrypt(data: string, key: string, iv: string): string;
2
+ declare function decrypt(data: string, key: string, iv: string): string;
3
+ export { encrypt, decrypt };
@@ -0,0 +1,35 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var aes = require('crypto-js/aes');
6
+ var cryptoJs = require('crypto-js');
7
+
8
+ function encrypt(data, key, iv) {
9
+ if (key.length !== 32)
10
+ throw new Error('Key must be 256 bits long');
11
+ if (iv.length !== 16)
12
+ throw new Error('IV must be 128 bits long');
13
+ const cipher = aes.encrypt(data, cryptoJs.enc.Utf8.parse(key), {
14
+ mode: cryptoJs.mode.CBC,
15
+ padding: cryptoJs.pad.Pkcs7,
16
+ iv: cryptoJs.enc.Utf8.parse(iv),
17
+ });
18
+ return cryptoJs.enc.Base64.stringify(cipher.ciphertext);
19
+ }
20
+ function decrypt(data, key, iv) {
21
+ if (key.length !== 32)
22
+ throw new Error('Key must be 256 bits long');
23
+ if (iv.length !== 16)
24
+ throw new Error('IV must be 128 bits long');
25
+ const cipher = aes.decrypt(data, cryptoJs.enc.Utf8.parse(key), {
26
+ mode: cryptoJs.mode.CBC,
27
+ padding: cryptoJs.pad.Pkcs7,
28
+ iv: cryptoJs.enc.Utf8.parse(iv),
29
+ });
30
+ return cryptoJs.enc.Utf8.stringify(cipher);
31
+ }
32
+
33
+ exports.decrypt = decrypt;
34
+ exports.encrypt = encrypt;
35
+ //# sourceMappingURL=aes256.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aes256.js","sources":["../../src/crypto/aes256.ts"],"sourcesContent":["import { encrypt as cryptoEncrypt, decrypt as cryptoDecript } from 'crypto-js/aes';\nimport { enc, mode, pad } from 'crypto-js';\n\nfunction encrypt(data: string, key: string, iv: string): string {\n if (key.length !== 32) throw new Error('Key must be 256 bits long');\n if (iv.length !== 16) throw new Error('IV must be 128 bits long');\n const cipher = cryptoEncrypt(data, enc.Utf8.parse(key), {\n mode: mode.CBC,\n padding: pad.Pkcs7,\n iv: enc.Utf8.parse(iv),\n });\n return enc.Base64.stringify(cipher.ciphertext);\n}\n\nfunction decrypt(data: string, key: string, iv: string): string {\n if (key.length !== 32) throw new Error('Key must be 256 bits long');\n if (iv.length !== 16) throw new Error('IV must be 128 bits long');\n const cipher = cryptoDecript(data, enc.Utf8.parse(key), {\n mode: mode.CBC,\n padding: pad.Pkcs7,\n iv: enc.Utf8.parse(iv),\n });\n return enc.Utf8.stringify(cipher);\n}\n\nexport { encrypt, decrypt };\n"],"names":["cryptoEncrypt","enc","mode","pad","cryptoDecript"],"mappings":";;;;;;;AAGA,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW,EAAE,EAAU,EAAA;AACpD,IAAA,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AACpE,IAAA,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAClE,IAAA,MAAM,MAAM,GAAGA,WAAa,CAAC,IAAI,EAAEC,YAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QACtD,IAAI,EAAEC,aAAI,CAAC,GAAG;QACd,OAAO,EAAEC,YAAG,CAAC,KAAK;QAClB,EAAE,EAAEF,YAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACvB,KAAA,CAAC,CAAC;IACH,OAAOA,YAAG,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACjD,CAAC;AAED,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW,EAAE,EAAU,EAAA;AACpD,IAAA,IAAI,GAAG,CAAC,MAAM,KAAK,EAAE;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;AACpE,IAAA,IAAI,EAAE,CAAC,MAAM,KAAK,EAAE;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;AAClE,IAAA,MAAM,MAAM,GAAGG,WAAa,CAAC,IAAI,EAAEH,YAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;QACtD,IAAI,EAAEC,aAAI,CAAC,GAAG;QACd,OAAO,EAAEC,YAAG,CAAC,KAAK;QAClB,EAAE,EAAEF,YAAG,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;AACvB,KAAA,CAAC,CAAC;IACH,OAAOA,YAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;AACpC;;;;;"}
@@ -0,0 +1 @@
1
+ export { encrypt, decrypt } from './aes256';
@@ -0,0 +1,11 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var aes256 = require('./aes256.js');
6
+
7
+
8
+
9
+ exports.decrypt = aes256.decrypt;
10
+ exports.encrypt = aes256.encrypt;
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
package/index.d.ts CHANGED
@@ -13,3 +13,4 @@ export * from './promise';
13
13
  export * from './string';
14
14
  export * from './types';
15
15
  export * from './color';
16
+ export * from './crypto';
package/index.js CHANGED
@@ -38,6 +38,7 @@ var delay = require('./promise/delay.js');
38
38
  var replaceInTemplate = require('./string/replace-in-template.js');
39
39
  var isStringLengthWithinRange = require('./string/is-string-length-within-range.js');
40
40
  var getContrastColor = require('./color/get-contrast-color.js');
41
+ var aes256 = require('./crypto/aes256.js');
41
42
 
42
43
 
43
44
 
@@ -84,4 +85,6 @@ exports.delay = delay.delay;
84
85
  exports.replaceInTemplate = replaceInTemplate.replaceInTemplate;
85
86
  exports.isStringLengthWithinRange = isStringLengthWithinRange.isStringLengthWithinRange;
86
87
  exports.getContrastColor = getContrastColor.getContrastColor;
88
+ exports.decrypt = aes256.decrypt;
89
+ exports.encrypt = aes256.encrypt;
87
90
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sparted/shared-library",
3
- "version": "1.6.0",
3
+ "version": "1.7.0",
4
4
  "repository": "git@github.com:Sparted/shared-library.git",
5
5
  "author": {
6
6
  "name": "Sparted",
@@ -22,6 +22,7 @@
22
22
  "build-and-publish": "yarn test && yarn build && (cd ./dist && yarn publish)"
23
23
  },
24
24
  "devDependencies": {
25
+ "@types/crypto-js": "^4.2.2",
25
26
  "@types/glob": "^8.0.0",
26
27
  "@types/jest": "^29.0.3",
27
28
  "@types/ungap__structured-clone": "^0.3.0",
@@ -61,6 +62,7 @@
61
62
  },
62
63
  "dependencies": {
63
64
  "@ungap/structured-clone": "^1.2.0",
65
+ "crypto-js": "^4.2.0",
64
66
  "ts-essentials": "^9.4.1"
65
67
  }
66
68
  }