@digitaldefiance/ecies-lib 1.0.13 → 1.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.
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +6 -0
- package/dist/constants.js.map +1 -1
- package/dist/enumerations/length-error-type.d.ts +3 -3
- package/dist/enumerations/length-error-type.d.ts.map +1 -1
- package/dist/enumerations/length-error-type.js +3 -3
- package/dist/enumerations/length-error-type.js.map +1 -1
- package/dist/enumerations/pbkdf2-profile.d.ts +2 -1
- package/dist/enumerations/pbkdf2-profile.d.ts.map +1 -1
- package/dist/enumerations/pbkdf2-profile.js +1 -0
- package/dist/enumerations/pbkdf2-profile.js.map +1 -1
- package/dist/errors/ecies.d.ts +6 -5
- package/dist/errors/ecies.d.ts.map +1 -1
- package/dist/errors/ecies.js +53 -8
- package/dist/errors/ecies.js.map +1 -1
- package/dist/errors/guid.d.ts +6 -4
- package/dist/errors/guid.d.ts.map +1 -1
- package/dist/errors/guid.js +41 -6
- package/dist/errors/guid.js.map +1 -1
- package/dist/errors/handleable.d.ts.map +1 -1
- package/dist/errors/handleable.js +2 -3
- package/dist/errors/handleable.js.map +1 -1
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.d.ts.map +1 -1
- package/dist/errors/index.js +1 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/errors/invalid-email.d.ts +5 -4
- package/dist/errors/invalid-email.d.ts.map +1 -1
- package/dist/errors/invalid-email.js +25 -7
- package/dist/errors/invalid-email.js.map +1 -1
- package/dist/errors/length.d.ts +5 -4
- package/dist/errors/length.d.ts.map +1 -1
- package/dist/errors/length.js +35 -7
- package/dist/errors/length.js.map +1 -1
- package/dist/errors/member.d.ts +5 -4
- package/dist/errors/member.d.ts.map +1 -1
- package/dist/errors/member.js +43 -6
- package/dist/errors/member.js.map +1 -1
- package/dist/errors/pbkdf2.d.ts +5 -4
- package/dist/errors/pbkdf2.d.ts.map +1 -1
- package/dist/errors/pbkdf2.js +24 -6
- package/dist/errors/pbkdf2.js.map +1 -1
- package/dist/errors/secure-storage.d.ts +5 -4
- package/dist/errors/secure-storage.d.ts.map +1 -1
- package/dist/errors/secure-storage.js +25 -6
- package/dist/errors/secure-storage.js.map +1 -1
- package/dist/errors/simple-ecies.d.ts +7 -0
- package/dist/errors/simple-ecies.d.ts.map +1 -0
- package/dist/errors/simple-ecies.js +20 -0
- package/dist/errors/simple-ecies.js.map +1 -0
- package/dist/errors/simple-test-error.d.ts +4 -0
- package/dist/errors/simple-test-error.d.ts.map +1 -0
- package/dist/errors/simple-test-error.js +7 -0
- package/dist/errors/simple-test-error.js.map +1 -0
- package/dist/errors/typed-handleable.d.ts +14 -0
- package/dist/errors/typed-handleable.d.ts.map +1 -0
- package/dist/errors/typed-handleable.js +40 -0
- package/dist/errors/typed-handleable.js.map +1 -0
- package/dist/errors/typed.d.ts +9 -8
- package/dist/errors/typed.d.ts.map +1 -1
- package/dist/errors/typed.js +33 -8
- package/dist/errors/typed.js.map +1 -1
- package/dist/i18n-config.d.ts +67 -16
- package/dist/i18n-config.d.ts.map +1 -1
- package/dist/i18n-config.js +87 -17
- package/dist/i18n-config.js.map +1 -1
- package/dist/i18n-setup.d.ts +10 -0
- package/dist/i18n-setup.d.ts.map +1 -0
- package/dist/i18n-setup.js +407 -0
- package/dist/i18n-setup.js.map +1 -0
- package/dist/package.json +63 -0
- package/dist/services/password-login.d.ts +5 -3
- package/dist/services/password-login.d.ts.map +1 -1
- package/dist/services/password-login.js +11 -7
- package/dist/services/password-login.js.map +1 -1
- package/dist/utils.js +10 -10
- package/dist/utils.js.map +1 -1
- package/package.json +2 -2
- package/dist/backup-code-string.d.ts +0 -26
- package/dist/backup-code-string.d.ts.map +0 -1
- package/dist/backup-code-string.js +0 -69
- package/dist/backup-code-string.js.map +0 -1
- package/dist/errors/invalid-backup-code.d.ts +0 -4
- package/dist/errors/invalid-backup-code.d.ts.map +0 -1
- package/dist/errors/invalid-backup-code.js +0 -7
- package/dist/errors/invalid-backup-code.js.map +0 -1
- package/dist/i18n-wrapper.d.ts +0 -19
- package/dist/i18n-wrapper.d.ts.map +0 -1
- package/dist/i18n-wrapper.js +0 -34
- package/dist/i18n-wrapper.js.map +0 -1
- package/dist/interfaces/backup-code-consts.d.ts +0 -16
- package/dist/interfaces/backup-code-consts.d.ts.map +0 -1
- package/dist/interfaces/backup-code-consts.js +0 -2
- package/dist/interfaces/backup-code-consts.js.map +0 -1
- package/dist/interfaces/backup-code.d.ts +0 -7
- package/dist/interfaces/backup-code.d.ts.map +0 -1
- package/dist/interfaces/backup-code.js +0 -2
- package/dist/interfaces/backup-code.js.map +0 -1
- package/dist/xor.d.ts +0 -37
- package/dist/xor.d.ts.map +0 -1
- package/dist/xor.js +0 -63
- package/dist/xor.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password-login.js","sourceRoot":"","sources":["../../src/services/password-login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAEzC,MAAM,OAAO,oBAAoB;IACd,YAAY,CAAe;IACrC,MAAM,CAAU,oBAAoB,GAAG,qBAAqB,CAAC;IAC7D,MAAM,CAAU,cAAc,GAAG,mBAAmB,CAAC;IACrD,MAAM,CAAU,2BAA2B,GAAG,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"password-login.js","sourceRoot":"","sources":["../../src/services/password-login.ts"],"names":[],"mappings":"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"}
|
package/dist/utils.js
CHANGED
|
@@ -30,12 +30,12 @@ export function lengthEncodeData(buffer) {
|
|
|
30
30
|
}
|
|
31
31
|
export function decodeLengthEncodedData(buffer) {
|
|
32
32
|
if (buffer.length < 1) {
|
|
33
|
-
throw new LengthError(LengthErrorType.
|
|
33
|
+
throw new LengthError(LengthErrorType.LengthIsTooShort);
|
|
34
34
|
}
|
|
35
35
|
const lengthType = getLengthEncodingTypeFromValue(buffer.readUint8(0));
|
|
36
36
|
const lengthTypeSize = getLengthForLengthType(lengthType);
|
|
37
37
|
if (buffer.length < 1 + lengthTypeSize) {
|
|
38
|
-
throw new LengthError(LengthErrorType.
|
|
38
|
+
throw new LengthError(LengthErrorType.LengthIsTooShort, undefined, undefined, 'lengthData');
|
|
39
39
|
}
|
|
40
40
|
let length;
|
|
41
41
|
switch (lengthType) {
|
|
@@ -51,15 +51,15 @@ export function decodeLengthEncodedData(buffer) {
|
|
|
51
51
|
case LengthEncodingType.UInt64:
|
|
52
52
|
length = buffer.readBigUInt64BE(1);
|
|
53
53
|
if (Number(length) > Number.MAX_SAFE_INTEGER) {
|
|
54
|
-
throw new LengthError(LengthErrorType.
|
|
54
|
+
throw new LengthError(LengthErrorType.LengthIsTooLong);
|
|
55
55
|
}
|
|
56
56
|
break;
|
|
57
57
|
default:
|
|
58
|
-
throw new LengthError(LengthErrorType.
|
|
58
|
+
throw new LengthError(LengthErrorType.LengthIsInvalidType);
|
|
59
59
|
}
|
|
60
60
|
const totalLength = 1 + lengthTypeSize + Number(length);
|
|
61
61
|
if (totalLength > buffer.length) {
|
|
62
|
-
throw new LengthError(LengthErrorType.
|
|
62
|
+
throw new LengthError(LengthErrorType.LengthIsTooShort, undefined, undefined, 'dataLength');
|
|
63
63
|
}
|
|
64
64
|
return {
|
|
65
65
|
data: buffer.subarray(1 + lengthTypeSize, totalLength),
|
|
@@ -185,7 +185,7 @@ export function getLengthEncodingTypeForLength(length) {
|
|
|
185
185
|
return LengthEncodingType.UInt64;
|
|
186
186
|
}
|
|
187
187
|
else {
|
|
188
|
-
throw new LengthError(LengthErrorType.
|
|
188
|
+
throw new LengthError(LengthErrorType.LengthIsTooLong);
|
|
189
189
|
}
|
|
190
190
|
}
|
|
191
191
|
else if (typeof length === 'bigint') {
|
|
@@ -202,11 +202,11 @@ export function getLengthEncodingTypeForLength(length) {
|
|
|
202
202
|
return LengthEncodingType.UInt64;
|
|
203
203
|
}
|
|
204
204
|
else {
|
|
205
|
-
throw new LengthError(LengthErrorType.
|
|
205
|
+
throw new LengthError(LengthErrorType.LengthIsTooLong);
|
|
206
206
|
}
|
|
207
207
|
}
|
|
208
208
|
else {
|
|
209
|
-
throw new LengthError(LengthErrorType.
|
|
209
|
+
throw new LengthError(LengthErrorType.LengthIsInvalidType);
|
|
210
210
|
}
|
|
211
211
|
}
|
|
212
212
|
/**
|
|
@@ -220,7 +220,7 @@ export function getLengthEncodingTypeFromValue(value) {
|
|
|
220
220
|
return length;
|
|
221
221
|
}
|
|
222
222
|
}
|
|
223
|
-
throw new LengthError(LengthErrorType.
|
|
223
|
+
throw new LengthError(LengthErrorType.LengthIsInvalidType);
|
|
224
224
|
}
|
|
225
225
|
/**
|
|
226
226
|
* Get the length in bytes for a given LengthEncodingType
|
|
@@ -238,7 +238,7 @@ export function getLengthForLengthType(type) {
|
|
|
238
238
|
case LengthEncodingType.UInt64:
|
|
239
239
|
return 8;
|
|
240
240
|
default:
|
|
241
|
-
throw new LengthError(LengthErrorType.
|
|
241
|
+
throw new LengthError(LengthErrorType.LengthIsInvalidType);
|
|
242
242
|
}
|
|
243
243
|
}
|
|
244
244
|
//# sourceMappingURL=utils.js.map
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEvC;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,UAAU,GAAuB,8BAA8B,CACnE,MAAM,CAAC,MAAM,CACd,CAAC;IACF,MAAM,cAAc,GAAW,sBAAsB,CAAC,UAAU,CAAC,CAAC;IAClE,MAAM,MAAM,GAAW,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IACxE,MAAM,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;IACjC,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,kBAAkB,CAAC,KAAK;YAC3B,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACpC,MAAM;QACR,KAAK,kBAAkB,CAAC,MAAM;YAC5B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,kBAAkB,CAAC,MAAM;YAC5B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,kBAAkB,CAAC,MAAM;YAC5B,MAAM,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;YAClD,MAAM;IACV,CAAC;IACD,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,GAAG,cAAc,CAAC,CAAC;IACxC,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,uBAAuB,CAIrC,MAAc;IAKd,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,WAAW,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@digitaldefiance/ecies-lib",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.14",
|
|
4
4
|
"description": "Digital Defiance ECIES Library",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
"license": "MIT",
|
|
51
51
|
"packageManager": "yarn@4.10.3",
|
|
52
52
|
"dependencies": {
|
|
53
|
-
"@digitaldefiance/i18n-lib": "^1.0.
|
|
53
|
+
"@digitaldefiance/i18n-lib": "^1.0.31",
|
|
54
54
|
"@ethereumjs/wallet": "^10.0.0",
|
|
55
55
|
"@noble/curves": "^2.0.1",
|
|
56
56
|
"@noble/hashes": "^2.0.1",
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { SecureString } from './secure-string';
|
|
2
|
-
export declare class BackupCodeString extends SecureString {
|
|
3
|
-
private readonly _normalizedCode;
|
|
4
|
-
constructor(code: string);
|
|
5
|
-
get value(): string;
|
|
6
|
-
get notNullValue(): string;
|
|
7
|
-
get valueAsHexString(): string;
|
|
8
|
-
get valueAsBase64String(): string;
|
|
9
|
-
get valueAsUint8Array(): Uint8Array;
|
|
10
|
-
/**
|
|
11
|
-
* Format a 32-char normalized code into display form (8 groups of 4).
|
|
12
|
-
* Does not restrict characters beyond grouping.
|
|
13
|
-
*/
|
|
14
|
-
static formatBackupCode(code: string): string;
|
|
15
|
-
/**
|
|
16
|
-
* Normalize user-entered code: remove spaces and hyphens, lowercase, and trim.
|
|
17
|
-
*/
|
|
18
|
-
static normalizeCode(input: string): string;
|
|
19
|
-
static generateBackupCode(): string;
|
|
20
|
-
/**
|
|
21
|
-
* Generate the configured number of backup codes.
|
|
22
|
-
* Note: If generation alphabet/length is controlled elsewhere, prefer that path.
|
|
23
|
-
*/
|
|
24
|
-
static generateBackupCodes(): Array<BackupCodeString>;
|
|
25
|
-
}
|
|
26
|
-
//# sourceMappingURL=backup-code-string.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code-string.d.ts","sourceRoot":"","sources":["../src/backup-code-string.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,qBAAa,gBAAiB,SAAQ,YAAY;IAChD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;gBAE7B,IAAI,EAAE,MAAM;IASxB,IAAoB,KAAK,IAAI,MAAM,CAElC;IAED,IAAoB,YAAY,IAAI,MAAM,CAEzC;IAED,IAAoB,gBAAgB,IAAI,MAAM,CAO7C;IAED,IAAoB,mBAAmB,IAAI,MAAM,CAKhD;IAED,IAAoB,iBAAiB,IAAI,UAAU,CAKlD;IAED;;;OAGG;WACW,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIpD;;OAEG;WACW,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;WAIpC,kBAAkB,IAAI,MAAM;IAU1C;;;OAGG;WACW,mBAAmB,IAAI,KAAK,CAAC,gBAAgB,CAAC;CAO7D"}
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
import { Constants } from './constants';
|
|
2
|
-
import { InvalidBackupCodeError } from './errors/invalid-backup-code';
|
|
3
|
-
import { SecureString } from './secure-string';
|
|
4
|
-
export class BackupCodeString extends SecureString {
|
|
5
|
-
_normalizedCode;
|
|
6
|
-
constructor(code) {
|
|
7
|
-
const normalizedCode = BackupCodeString.normalizeCode(code);
|
|
8
|
-
if (!Constants.BACKUP_CODES.NormalizedHexRegex.test(normalizedCode)) {
|
|
9
|
-
throw new InvalidBackupCodeError();
|
|
10
|
-
}
|
|
11
|
-
super(normalizedCode);
|
|
12
|
-
this._normalizedCode = normalizedCode;
|
|
13
|
-
}
|
|
14
|
-
get value() {
|
|
15
|
-
return this.notNullValue;
|
|
16
|
-
}
|
|
17
|
-
get notNullValue() {
|
|
18
|
-
return BackupCodeString.formatBackupCode(this._normalizedCode);
|
|
19
|
-
}
|
|
20
|
-
get valueAsHexString() {
|
|
21
|
-
const formattedValue = BackupCodeString.formatBackupCode(this._normalizedCode);
|
|
22
|
-
return new TextEncoder().encode(formattedValue).reduce((str, byte) => {
|
|
23
|
-
return str + byte.toString(16).padStart(2, '0');
|
|
24
|
-
}, '');
|
|
25
|
-
}
|
|
26
|
-
get valueAsBase64String() {
|
|
27
|
-
const formattedValue = BackupCodeString.formatBackupCode(this._normalizedCode);
|
|
28
|
-
return btoa(formattedValue);
|
|
29
|
-
}
|
|
30
|
-
get valueAsUint8Array() {
|
|
31
|
-
const formattedValue = BackupCodeString.formatBackupCode(this._normalizedCode);
|
|
32
|
-
return new TextEncoder().encode(formattedValue);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* Format a 32-char normalized code into display form (8 groups of 4).
|
|
36
|
-
* Does not restrict characters beyond grouping.
|
|
37
|
-
*/
|
|
38
|
-
static formatBackupCode(code) {
|
|
39
|
-
const groups = code.match(/.{1,4}/g) ?? [code];
|
|
40
|
-
return groups.join('-');
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Normalize user-entered code: remove spaces and hyphens, lowercase, and trim.
|
|
44
|
-
*/
|
|
45
|
-
static normalizeCode(input) {
|
|
46
|
-
return input.replace(/[\s-]/g, '').toLowerCase().trim();
|
|
47
|
-
}
|
|
48
|
-
static generateBackupCode() {
|
|
49
|
-
const alphabet = 'abcdefghijklmnopqrstuvwxyz0123456789';
|
|
50
|
-
const rnd = crypto.getRandomValues(new Uint8Array(32));
|
|
51
|
-
let raw = '';
|
|
52
|
-
for (let j = 0; j < 32; j++) {
|
|
53
|
-
raw += alphabet[rnd[j] % alphabet.length];
|
|
54
|
-
}
|
|
55
|
-
return raw;
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Generate the configured number of backup codes.
|
|
59
|
-
* Note: If generation alphabet/length is controlled elsewhere, prefer that path.
|
|
60
|
-
*/
|
|
61
|
-
static generateBackupCodes() {
|
|
62
|
-
const codes = [];
|
|
63
|
-
for (let i = 0; i < Constants.BACKUP_CODES.Count; i++) {
|
|
64
|
-
codes.push(new BackupCodeString(BackupCodeString.generateBackupCode()));
|
|
65
|
-
}
|
|
66
|
-
return codes;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
//# sourceMappingURL=backup-code-string.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code-string.js","sourceRoot":"","sources":["../src/backup-code-string.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"invalid-backup-code.d.ts","sourceRoot":"","sources":["../../src/errors/invalid-backup-code.ts"],"names":[],"mappings":"AAAA,qBAAa,sBAAuB,SAAQ,KAAK;gBACnC,OAAO,CAAC,EAAE,MAAM;CAI7B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"invalid-backup-code.js","sourceRoot":"","sources":["../../src/errors/invalid-backup-code.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IAC/C,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAC;QACxC,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF"}
|
package/dist/i18n-wrapper.d.ts
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { Language } from './types';
|
|
2
|
-
export declare class I18nEngineWrapper<TStringKey extends string, TLanguage extends string, TConstants extends Record<string, any> = Record<string, any>, TContext extends string = string> {
|
|
3
|
-
private static instance;
|
|
4
|
-
private engine;
|
|
5
|
-
private constructor();
|
|
6
|
-
static getInstance<TStringKey extends string, TLanguage extends string, TConstants extends Record<string, any> = Record<string, any>>(): I18nEngineWrapper;
|
|
7
|
-
translate(key: TStringKey, vars?: Record<string, string | number>, language?: Language): string;
|
|
8
|
-
t(key: TStringKey, vars?: Record<string, string | number>, language?: TLanguage): string;
|
|
9
|
-
/**
|
|
10
|
-
* Translates an enumeration value into the specified language.
|
|
11
|
-
* @param enumObj The enumeration object
|
|
12
|
-
* @param value The enumeration value to translate
|
|
13
|
-
* @param language The language to translate to
|
|
14
|
-
* @returns The translated enumeration value
|
|
15
|
-
*/
|
|
16
|
-
translateEnum<TEnum extends string | number>(enumObj: Record<string, TEnum>, value: TEnum, language: TLanguage): string;
|
|
17
|
-
getAvailableLanguages(): TLanguage[];
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=i18n-wrapper.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"i18n-wrapper.d.ts","sourceRoot":"","sources":["../src/i18n-wrapper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAEnC,qBAAa,iBAAiB,CAC5B,UAAU,SAAS,MAAM,EACzB,SAAS,SAAS,MAAM,EACxB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC5D,QAAQ,SAAS,MAAM,GAAG,MAAM;IAEhC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoB;IAC3C,OAAO,CAAC,MAAM,CAA0D;IAExE,OAAO;WAIO,WAAW,CACvB,UAAU,SAAS,MAAM,EACzB,SAAS,SAAS,MAAM,EACxB,UAAU,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACzD,iBAAiB;IAYf,SAAS,CACd,GAAG,EAAE,UAAU,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,QAAQ,GAClB,MAAM;IAIF,CAAC,CACN,GAAG,EAAE,UAAU,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,EACtC,QAAQ,CAAC,EAAE,SAAS,GACnB,MAAM;IAIT;;;;;;OAMG;IACI,aAAa,CAAC,KAAK,SAAS,MAAM,GAAG,MAAM,EAChD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAC9B,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,SAAS,GAClB,MAAM;IAIF,qBAAqB,IAAI,SAAS,EAAE;CAG5C"}
|
package/dist/i18n-wrapper.js
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { I18nEngine } from '@digitaldefiance/i18n-lib';
|
|
2
|
-
export class I18nEngineWrapper {
|
|
3
|
-
static instance;
|
|
4
|
-
engine;
|
|
5
|
-
constructor() {
|
|
6
|
-
this.engine = I18nEngine.getInstance();
|
|
7
|
-
}
|
|
8
|
-
static getInstance() {
|
|
9
|
-
if (!I18nEngineWrapper.instance) {
|
|
10
|
-
I18nEngineWrapper.instance = new I18nEngineWrapper();
|
|
11
|
-
}
|
|
12
|
-
return I18nEngineWrapper.instance;
|
|
13
|
-
}
|
|
14
|
-
translate(key, vars, language) {
|
|
15
|
-
return this.engine.translate(key, vars, language);
|
|
16
|
-
}
|
|
17
|
-
t(key, vars, language) {
|
|
18
|
-
return this.engine.t(key, vars, language);
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* Translates an enumeration value into the specified language.
|
|
22
|
-
* @param enumObj The enumeration object
|
|
23
|
-
* @param value The enumeration value to translate
|
|
24
|
-
* @param language The language to translate to
|
|
25
|
-
* @returns The translated enumeration value
|
|
26
|
-
*/
|
|
27
|
-
translateEnum(enumObj, value, language) {
|
|
28
|
-
return this.engine.translateEnum(enumObj, value, language);
|
|
29
|
-
}
|
|
30
|
-
getAvailableLanguages() {
|
|
31
|
-
return this.engine.getAvailableLanguages();
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
//# sourceMappingURL=i18n-wrapper.js.map
|
package/dist/i18n-wrapper.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"i18n-wrapper.js","sourceRoot":"","sources":["../src/i18n-wrapper.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvD,MAAM,OAAO,iBAAiB;IAMpB,MAAM,CAAC,QAAQ,CAAoB;IACnC,MAAM,CAA0D;IAExE;QACE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;IACzC,CAAC;IAEM,MAAM,CAAC,WAAW;QAKvB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC;YAChC,iBAAiB,CAAC,QAAQ,GAAG,IAAI,iBAAiB,EAK/C,CAAC;QACN,CAAC;QACD,OAAO,iBAAiB,CAAC,QAAQ,CAAC;IACpC,CAAC;IAEM,SAAS,CACd,GAAe,EACf,IAAsC,EACtC,QAAmB;QAEnB,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAW,CAAC;IAC9D,CAAC;IAEM,CAAC,CACN,GAAe,EACf,IAAsC,EACtC,QAAoB;QAEpB,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC5C,CAAC;IAED;;;;;;OAMG;IACI,aAAa,CAClB,OAA8B,EAC9B,KAAY,EACZ,QAAmB;QAEnB,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAQ,OAAO,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;IAEM,qBAAqB;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,CAAC;IAC7C,CAAC;CACF"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export interface IBackupCodeConstants {
|
|
2
|
-
/**
|
|
3
|
-
* How many backup codes to generate for users
|
|
4
|
-
*/
|
|
5
|
-
Count: number;
|
|
6
|
-
/**
|
|
7
|
-
* Regex for the backup codes
|
|
8
|
-
* 32 lowercase alphanumeric character string (a-z0-9)
|
|
9
|
-
*/
|
|
10
|
-
NormalizedHexRegex: RegExp;
|
|
11
|
-
/**
|
|
12
|
-
* Regex for the display format of the backup codes
|
|
13
|
-
*/
|
|
14
|
-
DisplayRegex: RegExp;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=backup-code-consts.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code-consts.d.ts","sourceRoot":"","sources":["../../src/interfaces/backup-code-consts.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code-consts.js","sourceRoot":"","sources":["../../src/interfaces/backup-code-consts.ts"],"names":[],"mappings":""}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code.d.ts","sourceRoot":"","sources":["../../src/interfaces/backup-code.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"backup-code.js","sourceRoot":"","sources":["../../src/interfaces/backup-code.ts"],"names":[],"mappings":""}
|
package/dist/xor.d.ts
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A simple and fast XOR cipher for obfuscating data in memory for browser environments.
|
|
3
|
-
* This is not a substitute for strong cryptography but provides a lightweight way
|
|
4
|
-
* to prevent sensitive data from being stored in plaintext in memory.
|
|
5
|
-
*/
|
|
6
|
-
export declare class XorService {
|
|
7
|
-
/**
|
|
8
|
-
* Encrypts or decrypts data using a simple XOR cipher.
|
|
9
|
-
* The key is XORed with the data. The same function is used for
|
|
10
|
-
* both encryption and decryption.
|
|
11
|
-
*
|
|
12
|
-
* @param data The data to process.
|
|
13
|
-
* @param key The key to use for the XOR operation.
|
|
14
|
-
* @returns A new Uint8Array containing the result of the XOR operation.
|
|
15
|
-
*/
|
|
16
|
-
static xor(data: Uint8Array, key: Uint8Array): Uint8Array;
|
|
17
|
-
/**
|
|
18
|
-
* Generates a random key of a specified length.
|
|
19
|
-
* @param length The length of the key in bytes.
|
|
20
|
-
* @returns A Uint8Array containing the random key.
|
|
21
|
-
* @throws Error if crypto API is not available.
|
|
22
|
-
*/
|
|
23
|
-
static generateKey(length: number): Uint8Array;
|
|
24
|
-
/**
|
|
25
|
-
* Helper method to convert a string to a Uint8Array.
|
|
26
|
-
* @param str The string to convert.
|
|
27
|
-
* @returns A Uint8Array representation of the string.
|
|
28
|
-
*/
|
|
29
|
-
static stringToBytes(str: string): Uint8Array;
|
|
30
|
-
/**
|
|
31
|
-
* Helper method to convert a Uint8Array to a string.
|
|
32
|
-
* @param bytes The Uint8Array to convert.
|
|
33
|
-
* @returns A string representation of the Uint8Array.
|
|
34
|
-
*/
|
|
35
|
-
static bytesToString(bytes: Uint8Array): string;
|
|
36
|
-
}
|
|
37
|
-
//# sourceMappingURL=xor.d.ts.map
|
package/dist/xor.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xor.d.ts","sourceRoot":"","sources":["../src/xor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,qBAAa,UAAU;IACrB;;;;;;;;OAQG;WACW,GAAG,CAAC,IAAI,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,GAAG,UAAU;IAQhE;;;;;OAKG;WACW,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;IAgBrD;;;;OAIG;WACW,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAKpD;;;;OAIG;WACW,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,MAAM;CAIvD"}
|
package/dist/xor.js
DELETED
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* A simple and fast XOR cipher for obfuscating data in memory for browser environments.
|
|
3
|
-
* This is not a substitute for strong cryptography but provides a lightweight way
|
|
4
|
-
* to prevent sensitive data from being stored in plaintext in memory.
|
|
5
|
-
*/
|
|
6
|
-
export class XorService {
|
|
7
|
-
/**
|
|
8
|
-
* Encrypts or decrypts data using a simple XOR cipher.
|
|
9
|
-
* The key is XORed with the data. The same function is used for
|
|
10
|
-
* both encryption and decryption.
|
|
11
|
-
*
|
|
12
|
-
* @param data The data to process.
|
|
13
|
-
* @param key The key to use for the XOR operation.
|
|
14
|
-
* @returns A new Uint8Array containing the result of the XOR operation.
|
|
15
|
-
*/
|
|
16
|
-
static xor(data, key) {
|
|
17
|
-
const result = new Uint8Array(data.length);
|
|
18
|
-
for (let i = 0; i < data.length; i++) {
|
|
19
|
-
result[i] = data[i] ^ key[i % key.length];
|
|
20
|
-
}
|
|
21
|
-
return result;
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Generates a random key of a specified length.
|
|
25
|
-
* @param length The length of the key in bytes.
|
|
26
|
-
* @returns A Uint8Array containing the random key.
|
|
27
|
-
* @throws Error if crypto API is not available.
|
|
28
|
-
*/
|
|
29
|
-
static generateKey(length) {
|
|
30
|
-
const randomBytes = new Uint8Array(length);
|
|
31
|
-
// Check if running in a browser with crypto support
|
|
32
|
-
if (typeof window !== 'undefined' && window.crypto) {
|
|
33
|
-
window.crypto.getRandomValues(randomBytes);
|
|
34
|
-
}
|
|
35
|
-
else if (typeof crypto !== 'undefined') {
|
|
36
|
-
// For environments where crypto is global (some newer JS runtimes)
|
|
37
|
-
crypto.getRandomValues(randomBytes);
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
throw new Error('Crypto API not available in this environment');
|
|
41
|
-
}
|
|
42
|
-
return randomBytes;
|
|
43
|
-
}
|
|
44
|
-
/**
|
|
45
|
-
* Helper method to convert a string to a Uint8Array.
|
|
46
|
-
* @param str The string to convert.
|
|
47
|
-
* @returns A Uint8Array representation of the string.
|
|
48
|
-
*/
|
|
49
|
-
static stringToBytes(str) {
|
|
50
|
-
const encoder = new TextEncoder();
|
|
51
|
-
return encoder.encode(str);
|
|
52
|
-
}
|
|
53
|
-
/**
|
|
54
|
-
* Helper method to convert a Uint8Array to a string.
|
|
55
|
-
* @param bytes The Uint8Array to convert.
|
|
56
|
-
* @returns A string representation of the Uint8Array.
|
|
57
|
-
*/
|
|
58
|
-
static bytesToString(bytes) {
|
|
59
|
-
const decoder = new TextDecoder();
|
|
60
|
-
return decoder.decode(bytes);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
//# sourceMappingURL=xor.js.map
|
package/dist/xor.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"xor.js","sourceRoot":"","sources":["../src/xor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,OAAO,UAAU;IACrB;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAgB,EAAE,GAAe;QACjD,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACrC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5C,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CAAC,MAAc;QACtC,MAAM,WAAW,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;QAE3C,oDAAoD;QACpD,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YACnD,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC;aAAM,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;YACzC,mEAAmE;YACnE,MAAM,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QAClE,CAAC;QAED,OAAO,WAAW,CAAC;IACrB,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,aAAa,CAAC,GAAW;QACrC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;;;OAIG;IACI,MAAM,CAAC,aAAa,CAAC,KAAiB;QAC3C,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;CACF"}
|