mm-share-lib 0.0.1 → 0.0.3
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/index.d.ts +1 -0
- package/dist/index.js +18 -0
- package/dist/index.js.map +1 -0
- package/dist/src/common/constant/entity-state.constant.d.ts +4 -0
- package/dist/src/common/constant/entity-state.constant.js +9 -0
- package/dist/src/common/constant/entity-state.constant.js.map +1 -0
- package/dist/src/common/constant/index.d.ts +1 -0
- package/dist/src/common/constant/index.js +18 -0
- package/dist/src/common/constant/index.js.map +1 -0
- package/dist/src/common/generic/entity/entity.generic.d.ts +10 -0
- package/dist/src/common/generic/entity/entity.generic.js +48 -0
- package/dist/src/common/generic/entity/entity.generic.js.map +1 -0
- package/dist/src/common/generic/entity/index.d.ts +1 -0
- package/dist/src/common/generic/entity/index.js +18 -0
- package/dist/src/common/generic/entity/index.js.map +1 -0
- package/dist/src/common/generic/index.d.ts +2 -0
- package/dist/src/common/generic/index.js +19 -0
- package/dist/src/common/generic/index.js.map +1 -0
- package/dist/src/common/generic/service/index.d.ts +1 -0
- package/dist/src/common/generic/service/index.js +18 -0
- package/dist/src/common/generic/service/index.js.map +1 -0
- package/dist/src/common/generic/service/service.generic.d.ts +18 -0
- package/dist/src/common/generic/service/service.generic.js +85 -0
- package/dist/src/common/generic/service/service.generic.js.map +1 -0
- package/dist/src/common/index.js +19 -0
- package/dist/src/common/index.js.map +1 -0
- package/dist/src/dto/base-filter.dto.d.ts +4 -0
- package/dist/src/dto/base-filter.dto.js +11 -0
- package/dist/src/dto/base-filter.dto.js.map +1 -0
- package/dist/src/dto/index.d.ts +2 -0
- package/dist/src/dto/index.js +19 -0
- package/dist/src/dto/index.js.map +1 -0
- package/dist/src/dto/pagination.dto.d.ts +4 -0
- package/dist/src/dto/pagination.dto.js +11 -0
- package/dist/src/dto/pagination.dto.js.map +1 -0
- package/dist/src/index.d.ts +5 -0
- package/dist/src/index.js +22 -0
- package/dist/src/index.js.map +1 -0
- package/dist/src/lib/index.d.ts +1 -0
- package/dist/src/lib/index.js +18 -0
- package/dist/src/lib/index.js.map +1 -0
- package/dist/src/lib/search-engine/document/base.document.d.ts +3 -0
- package/dist/src/lib/search-engine/document/base.document.js +7 -0
- package/dist/src/lib/search-engine/document/base.document.js.map +1 -0
- package/dist/src/lib/search-engine/document/index.d.ts +1 -0
- package/dist/src/lib/search-engine/document/index.js +18 -0
- package/dist/src/lib/search-engine/document/index.js.map +1 -0
- package/dist/src/lib/search-engine/index.d.ts +1 -0
- package/dist/src/lib/search-engine/index.js +18 -0
- package/dist/src/lib/search-engine/index.js.map +1 -0
- package/dist/src/lib/search-engine/interface/index.d.ts +2 -0
- package/dist/src/lib/search-engine/interface/index.js +19 -0
- package/dist/src/lib/search-engine/interface/index.js.map +1 -0
- package/dist/src/lib/search-engine/interface/search-document.interface.d.ts +4 -0
- package/dist/src/lib/search-engine/interface/search-document.interface.js +3 -0
- package/dist/src/lib/search-engine/interface/search-document.interface.js.map +1 -0
- package/dist/src/lib/search-engine/interface/transform-service.interface.d.ts +6 -0
- package/dist/src/lib/search-engine/interface/transform-service.interface.js +3 -0
- package/dist/src/lib/search-engine/interface/transform-service.interface.js.map +1 -0
- package/dist/src/lib/search-engine/schema/generic.schema.d.ts +2 -0
- package/dist/src/lib/search-engine/schema/generic.schema.js +7 -0
- package/dist/src/lib/search-engine/schema/generic.schema.js.map +1 -0
- package/dist/src/lib/search-engine/schema/index.d.ts +1 -0
- package/dist/src/lib/search-engine/schema/index.js +18 -0
- package/dist/src/lib/search-engine/schema/index.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/index.d.ts +3 -0
- package/dist/src/lib/search-engine/typesense/index.js +20 -0
- package/dist/src/lib/search-engine/typesense/index.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/metadata/index.d.ts +2 -0
- package/dist/src/lib/search-engine/typesense/metadata/index.js +19 -0
- package/dist/src/lib/search-engine/typesense/metadata/index.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/metadata/schema.metadata.d.ts +12 -0
- package/dist/src/lib/search-engine/typesense/metadata/schema.metadata.js +3 -0
- package/dist/src/lib/search-engine/typesense/metadata/schema.metadata.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/metadata/typesense.metadata-registry.d.ts +10 -0
- package/dist/src/lib/search-engine/typesense/metadata/typesense.metadata-registry.js +34 -0
- package/dist/src/lib/search-engine/typesense/metadata/typesense.metadata-registry.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/service/client.service.d.ts +33 -0
- package/dist/src/lib/search-engine/typesense/service/client.service.js +197 -0
- package/dist/src/lib/search-engine/typesense/service/client.service.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/service/index.d.ts +1 -0
- package/dist/src/lib/search-engine/typesense/service/index.js +18 -0
- package/dist/src/lib/search-engine/typesense/service/index.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/typesense-module.interface.d.ts +27 -0
- package/dist/src/lib/search-engine/typesense/typesense-module.interface.js +3 -0
- package/dist/src/lib/search-engine/typesense/typesense-module.interface.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.constants.d.ts +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.constants.js +5 -0
- package/dist/src/lib/search-engine/typesense/typesense.constants.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.d.ts +8 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.js +69 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.test.d.ts +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.test.js +89 -0
- package/dist/src/lib/search-engine/typesense/typesense.module.test.js.map +1 -0
- package/dist/src/lib/search-engine/typesense/typesense.providers.d.ts +4 -0
- package/dist/src/lib/search-engine/typesense/typesense.providers.js +40 -0
- package/dist/src/lib/search-engine/typesense/typesense.providers.js.map +1 -0
- package/dist/src/response/index.d.ts +1 -0
- package/dist/src/response/index.js +18 -0
- package/dist/src/response/index.js.map +1 -0
- package/dist/src/response/pagination.response.d.ts +17 -0
- package/dist/src/response/pagination.response.js +29 -0
- package/dist/src/response/pagination.response.js.map +1 -0
- package/dist/src/util/date.util.d.ts +2 -0
- package/dist/src/util/date.util.js +7 -0
- package/dist/src/util/date.util.js.map +1 -0
- package/dist/src/util/generator.util.d.ts +2 -0
- package/dist/src/util/generator.util.js +20 -0
- package/dist/src/util/generator.util.js.map +1 -0
- package/dist/src/util/index.d.ts +2 -0
- package/dist/src/util/index.js +19 -0
- package/dist/src/util/index.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -0
- package/package.json +81 -77
- package/src/{common/constant → constant}/entity-state.constant.ts +4 -4
- package/src/{common/constant → constant}/index.ts +1 -1
- package/src/{common/generic → generic}/entity/entity.generic.ts +34 -34
- package/src/{common/generic → generic}/entity/index.ts +1 -1
- package/src/{common/generic → generic}/index.ts +2 -2
- package/src/{common/generic → generic}/service/index.ts +1 -1
- package/src/{common/generic → generic}/service/service.generic.ts +112 -112
- package/src/index.ts +2 -1
- package/src/util/date.util.spec.ts +49 -0
- package/src/util/date.util.ts +10 -1
- package/src/util/generator.util.spec.ts +79 -35
- package/src/util/generator.util.ts +27 -18
- /package/{src/common/index.ts → dist/src/common/index.d.ts} +0 -0
- /package/src/{common/generic/service/service.generic.spec.ts → exception/index.ts} +0 -0
@@ -1,35 +1,79 @@
|
|
1
|
-
import
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
const
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
1
|
+
import * as bcrypt from 'bcrypt';
|
2
|
+
import {
|
3
|
+
generateKey,
|
4
|
+
generateDigitCode,
|
5
|
+
generatePassword,
|
6
|
+
} from './generator.util';
|
7
|
+
|
8
|
+
describe('Utils', () => {
|
9
|
+
describe('generateKey', () => {
|
10
|
+
it('should generate a key of the specified length', () => {
|
11
|
+
const keyLength = 10;
|
12
|
+
const key = generateKey(keyLength);
|
13
|
+
expect(key).toHaveLength(keyLength);
|
14
|
+
});
|
15
|
+
|
16
|
+
it('should generate a key with default length if not specified', () => {
|
17
|
+
const defaultKeyLength = 36;
|
18
|
+
const key = generateKey();
|
19
|
+
expect(key).toHaveLength(defaultKeyLength);
|
20
|
+
});
|
21
|
+
});
|
22
|
+
|
23
|
+
describe('generateDigitCode', () => {
|
24
|
+
it('should generate a digit code of the specified length', () => {
|
25
|
+
const codeLength = 6;
|
26
|
+
const code = generateDigitCode(codeLength);
|
27
|
+
expect(code).toHaveLength(codeLength);
|
28
|
+
expect(Number(code)).toBeGreaterThanOrEqual(100000);
|
29
|
+
expect(Number(code)).toBeLessThanOrEqual(999999);
|
30
|
+
});
|
31
|
+
|
32
|
+
it('should generate a digit code with default length if not specified', () => {
|
33
|
+
const defaultCodeLength = 4;
|
34
|
+
const code = generateDigitCode();
|
35
|
+
expect(code).toHaveLength(defaultCodeLength);
|
36
|
+
expect(Number(code)).toBeGreaterThanOrEqual(1000);
|
37
|
+
expect(Number(code)).toBeLessThanOrEqual(9999);
|
38
|
+
});
|
39
|
+
});
|
40
|
+
|
41
|
+
describe('Utility Functions', () => {
|
42
|
+
test('generatePassword should return a hashed password with the specified salt rounds', async () => {
|
43
|
+
// Arrange
|
44
|
+
const password = 'password123';
|
45
|
+
const saltRounds = 12;
|
46
|
+
|
47
|
+
// Act
|
48
|
+
const hashedPassword = await generatePassword(password, saltRounds);
|
49
|
+
|
50
|
+
// Assert
|
51
|
+
expect(typeof hashedPassword).toBe('string');
|
52
|
+
expect(hashedPassword).not.toBe(password);
|
53
|
+
expect(await bcrypt.compare(password, hashedPassword)).toBeTruthy();
|
54
|
+
});
|
55
|
+
|
56
|
+
test('generatePassword should use the default salt rounds when no value is provided', async () => {
|
57
|
+
// Arrange
|
58
|
+
const password = 'password123';
|
59
|
+
const defaultSaltRounds = 10;
|
60
|
+
|
61
|
+
// Act
|
62
|
+
const hashedPassword = await generatePassword(password);
|
63
|
+
|
64
|
+
// Assert
|
65
|
+
expect(typeof hashedPassword).toBe('string');
|
66
|
+
expect(hashedPassword).not.toBe(password);
|
67
|
+
expect(await bcrypt.compare(password, hashedPassword)).toBeTruthy();
|
68
|
+
expect(bcrypt.getRounds(hashedPassword)).toBe(defaultSaltRounds);
|
69
|
+
});
|
70
|
+
|
71
|
+
test('generatePassword should throw an error when an invalid password is provided', async () => {
|
72
|
+
// Arrange
|
73
|
+
const invalidPassword = '';
|
74
|
+
|
75
|
+
// Act and Assert
|
76
|
+
await expect(generatePassword(invalidPassword)).rejects.toThrow();
|
77
|
+
});
|
78
|
+
});
|
79
|
+
});
|
@@ -1,18 +1,27 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
}
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
const
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
}
|
1
|
+
import * as bcrypt from 'bcrypt';
|
2
|
+
|
3
|
+
export const generateKey = (length = 36) => {
|
4
|
+
const chars =
|
5
|
+
'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
|
6
|
+
let result = '';
|
7
|
+
for (let i = length; i > 0; i--) {
|
8
|
+
result += chars[Math.floor(Math.random() * chars.length)];
|
9
|
+
}
|
10
|
+
return result;
|
11
|
+
};
|
12
|
+
|
13
|
+
export const generateDigitCode = (length = 4): string => {
|
14
|
+
const startAt = 1 + '0'.repeat(length - 1);
|
15
|
+
const endAt = 9 + '0'.repeat(length - 1);
|
16
|
+
const generateCode = `${Math.floor(
|
17
|
+
Number(startAt) + Math.random() * Number(endAt),
|
18
|
+
)}`;
|
19
|
+
return generateCode;
|
20
|
+
};
|
21
|
+
|
22
|
+
export const generatePassword = async (
|
23
|
+
password: string,
|
24
|
+
saltOrRounds = 10,
|
25
|
+
): Promise<string> => {
|
26
|
+
return await bcrypt.hash(password, saltOrRounds);
|
27
|
+
};
|
File without changes
|
File without changes
|