randex 0.5.0 → 0.6.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.
- package/README.md +21 -4
- package/lib/basic/index.js +1 -1
- package/lib/basic/set.d.ts +3 -2
- package/lib/basic/set.js +37 -17
- package/lib/custom/name.js +2 -21
- package/lib/custom/username.d.ts +5 -1
- package/lib/custom/username.js +5 -5
- package/lib/test/test-util.js +2 -2
- package/lib/test/username.test.js +8 -0
- package/package.json +2 -5
package/README.md
CHANGED
|
@@ -127,9 +127,18 @@ Randoms username.
|
|
|
127
127
|
```ts
|
|
128
128
|
import { randomUsername } from "randex";
|
|
129
129
|
|
|
130
|
+
// default (min - 6, max - 10 chars)
|
|
130
131
|
randomUsername();
|
|
131
|
-
|
|
132
132
|
// icvv81d1j
|
|
133
|
+
|
|
134
|
+
// with length 5 chars
|
|
135
|
+
randomUsername({ length: 5 });
|
|
136
|
+
// okmle
|
|
137
|
+
|
|
138
|
+
// with 2 min and 5 max chars
|
|
139
|
+
randomName({ length: [2, 5] });
|
|
140
|
+
// lkhs
|
|
141
|
+
|
|
133
142
|
```
|
|
134
143
|
|
|
135
144
|
Equals to:
|
|
@@ -144,6 +153,12 @@ random(
|
|
|
144
153
|
);
|
|
145
154
|
```
|
|
146
155
|
|
|
156
|
+
Options:
|
|
157
|
+
| Name | Type| Description|
|
|
158
|
+
| ------------------------ | ---- |------------ |
|
|
159
|
+
|length|[RandexLength](#randexlength) | Length of chars |
|
|
160
|
+
|
|
161
|
+
|
|
147
162
|
## randomEmail
|
|
148
163
|
|
|
149
164
|
Randoms username.
|
|
@@ -151,9 +166,10 @@ Randoms username.
|
|
|
151
166
|
```ts
|
|
152
167
|
import { randomEmail } from "randex";
|
|
153
168
|
|
|
154
|
-
randomEmail();
|
|
155
169
|
|
|
170
|
+
randomEmail();
|
|
156
171
|
// stv4ox27sevt@mqsyin.fil
|
|
172
|
+
|
|
157
173
|
```
|
|
158
174
|
|
|
159
175
|
Equals to:
|
|
@@ -169,6 +185,7 @@ random(["english", "l"], [[["english", "l"], "number"], 10], ["english", "l"]) +
|
|
|
169
185
|
]);
|
|
170
186
|
```
|
|
171
187
|
|
|
188
|
+
|
|
172
189
|
## randomName
|
|
173
190
|
|
|
174
191
|
Randoms a name of the person, city, place, restaurant, ect.
|
|
@@ -184,11 +201,11 @@ randomName();
|
|
|
184
201
|
randomName({ alphabet: "french" });
|
|
185
202
|
// Dbïœ
|
|
186
203
|
|
|
187
|
-
//
|
|
204
|
+
// with length 5 chars
|
|
188
205
|
randomName({ length: 5 });
|
|
189
206
|
// Okmpj
|
|
190
207
|
|
|
191
|
-
//
|
|
208
|
+
// with 2 min and 5 max chars
|
|
192
209
|
randomName({ length: [2, 5] });
|
|
193
210
|
// Wslg
|
|
194
211
|
```
|
package/lib/basic/index.js
CHANGED
package/lib/basic/set.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { RandexSet } from "../interfaces";
|
|
2
|
-
export declare class
|
|
1
|
+
import { RandexSet, RandexLength } from "../interfaces";
|
|
2
|
+
export declare class RandexSetUtil {
|
|
3
3
|
private static toSingleRange;
|
|
4
4
|
private static toAlphabetCase;
|
|
5
5
|
private static toAlphabetRange;
|
|
6
6
|
static toRange(set: RandexSet): string;
|
|
7
|
+
static getLength(reservedChars: number, length: RandexLength | undefined, defaultLength: RandexLength): RandexLength;
|
|
7
8
|
}
|
package/lib/basic/set.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.RandexSetUtil = void 0;
|
|
4
4
|
var type_1 = require("./type");
|
|
5
5
|
var hex = "0123456789ABCDEFabcdef";
|
|
6
6
|
var symbol = '[-!$%^&*()_+|~=`{}[]:";<>?,./]' + "'";
|
|
@@ -14,15 +14,15 @@ var spanishLower = "abcdefghijklmnopqrstuvwxyzñ";
|
|
|
14
14
|
var spanishUpper = "ABCDEFGHIJKLMNOPQRSTUVWXYZÑ";
|
|
15
15
|
var russianLower = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя";
|
|
16
16
|
var russianUpper = "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ";
|
|
17
|
-
var
|
|
18
|
-
function
|
|
17
|
+
var RandexSetUtil = /** @class */ (function () {
|
|
18
|
+
function RandexSetUtil() {
|
|
19
19
|
}
|
|
20
|
-
|
|
20
|
+
RandexSetUtil.toSingleRange = function (itemSet) {
|
|
21
21
|
if (Array.isArray(itemSet)) {
|
|
22
|
-
return
|
|
22
|
+
return RandexSetUtil.toAlphabetRange(itemSet);
|
|
23
23
|
}
|
|
24
24
|
else if (type_1.RandexTypeParser.inAlphabet(itemSet)) {
|
|
25
|
-
return
|
|
25
|
+
return RandexSetUtil.toAlphabetRange([itemSet, "default"]);
|
|
26
26
|
}
|
|
27
27
|
switch (itemSet) {
|
|
28
28
|
case "hex":
|
|
@@ -37,7 +37,7 @@ var RtSetUtil = /** @class */ (function () {
|
|
|
37
37
|
return "";
|
|
38
38
|
}
|
|
39
39
|
};
|
|
40
|
-
|
|
40
|
+
RandexSetUtil.toAlphabetCase = function (cas, lowerWord, upperWord) {
|
|
41
41
|
switch (cas) {
|
|
42
42
|
case "lower":
|
|
43
43
|
case "l":
|
|
@@ -49,31 +49,51 @@ var RtSetUtil = /** @class */ (function () {
|
|
|
49
49
|
return lowerWord + upperWord;
|
|
50
50
|
}
|
|
51
51
|
};
|
|
52
|
-
|
|
52
|
+
RandexSetUtil.toAlphabetRange = function (set) {
|
|
53
53
|
var alphabet = set[0], aCase = set[1];
|
|
54
54
|
switch (alphabet) {
|
|
55
55
|
case "english":
|
|
56
|
-
return
|
|
56
|
+
return RandexSetUtil.toAlphabetCase(aCase, englishLower, englishUpper);
|
|
57
57
|
case "french":
|
|
58
|
-
return
|
|
58
|
+
return RandexSetUtil.toAlphabetCase(aCase, frenchLower, frenchUpper);
|
|
59
59
|
case "spanish":
|
|
60
|
-
return
|
|
60
|
+
return RandexSetUtil.toAlphabetCase(aCase, spanishLower, spanishUpper);
|
|
61
61
|
// case "german":
|
|
62
62
|
// return RtSetUtil.toAlphabetCase(aCase, englishLower, englishUpper);
|
|
63
63
|
case "russian":
|
|
64
|
-
return
|
|
64
|
+
return RandexSetUtil.toAlphabetCase(aCase, russianLower, russianUpper);
|
|
65
65
|
}
|
|
66
66
|
};
|
|
67
|
-
|
|
67
|
+
RandexSetUtil.toRange = function (set) {
|
|
68
68
|
var result = "";
|
|
69
69
|
if (type_1.RandexTypeParser.isSetSingle(set)) {
|
|
70
|
-
result +=
|
|
70
|
+
result += RandexSetUtil.toSingleRange(set);
|
|
71
71
|
}
|
|
72
72
|
else if (type_1.RandexTypeParser.isSet(set)) {
|
|
73
|
-
result += set.map(
|
|
73
|
+
result += set.map(RandexSetUtil.toSingleRange).join("");
|
|
74
74
|
}
|
|
75
75
|
return result;
|
|
76
76
|
};
|
|
77
|
-
|
|
77
|
+
RandexSetUtil.getLength = function (reservedChars, length, defaultLength) {
|
|
78
|
+
var result = defaultLength;
|
|
79
|
+
if (typeof length === "number" && length > reservedChars) {
|
|
80
|
+
result = length - reservedChars;
|
|
81
|
+
}
|
|
82
|
+
else if (Array.isArray(length)) {
|
|
83
|
+
var min = length[0], max = length[1];
|
|
84
|
+
var dMin = min - reservedChars;
|
|
85
|
+
var dMax = max - reservedChars;
|
|
86
|
+
if (dMin >= 0 && dMax >= 0) {
|
|
87
|
+
if (dMin < dMax) {
|
|
88
|
+
return [dMin, dMax];
|
|
89
|
+
}
|
|
90
|
+
else if (dMin === dMax) {
|
|
91
|
+
return dMin;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
return result;
|
|
96
|
+
};
|
|
97
|
+
return RandexSetUtil;
|
|
78
98
|
}());
|
|
79
|
-
exports.
|
|
99
|
+
exports.RandexSetUtil = RandexSetUtil;
|
package/lib/custom/name.js
CHANGED
|
@@ -2,29 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.randomFullName = exports.randomName = void 0;
|
|
4
4
|
var basic_1 = require("../basic");
|
|
5
|
-
|
|
6
|
-
var result = defaultLength;
|
|
7
|
-
if (typeof length === "number" && length > reservedChars) {
|
|
8
|
-
result = length - reservedChars;
|
|
9
|
-
}
|
|
10
|
-
else if (Array.isArray(length)) {
|
|
11
|
-
var min = length[0], max = length[1];
|
|
12
|
-
var dMin = min - reservedChars;
|
|
13
|
-
var dMax = max - reservedChars;
|
|
14
|
-
if (dMin >= 0 && dMax >= 0) {
|
|
15
|
-
if (dMin < dMax) {
|
|
16
|
-
return [dMin, dMax];
|
|
17
|
-
}
|
|
18
|
-
else if (dMin === dMax) {
|
|
19
|
-
return dMin;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
}
|
|
5
|
+
var set_1 = require("../basic/set");
|
|
25
6
|
function randomName(options) {
|
|
26
7
|
var _a = options || {}, length = _a.length, _b = _a.alphabet, alphabet = _b === void 0 ? "english" : _b;
|
|
27
|
-
var currentLength = getLength(1, length, [1, 9]);
|
|
8
|
+
var currentLength = set_1.RandexSetUtil.getLength(1, length, [1, 9]);
|
|
28
9
|
return (0, basic_1.random)([alphabet, "u"], [[alphabet, "l"], currentLength]);
|
|
29
10
|
}
|
|
30
11
|
exports.randomName = randomName;
|
package/lib/custom/username.d.ts
CHANGED
package/lib/custom/username.js
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.randomUsername = void 0;
|
|
4
4
|
var basic_1 = require("../basic");
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
]);
|
|
5
|
+
var set_1 = require("../basic/set");
|
|
6
|
+
function randomUsername(options) {
|
|
7
|
+
var length = (options || {}).length;
|
|
8
|
+
var currentLength = set_1.RandexSetUtil.getLength(1, length, [6, 10]);
|
|
9
|
+
return (0, basic_1.random)(["english", "l"], [[["english", "l"], "number"], currentLength]);
|
|
10
10
|
}
|
|
11
11
|
exports.randomUsername = randomUsername;
|
package/lib/test/test-util.js
CHANGED
|
@@ -46,11 +46,11 @@ var TestUtil = /** @class */ (function () {
|
|
|
46
46
|
return value.length > 0;
|
|
47
47
|
};
|
|
48
48
|
TestUtil.inSet = function (value, set) {
|
|
49
|
-
var range = set_1.
|
|
49
|
+
var range = set_1.RandexSetUtil.toRange(set);
|
|
50
50
|
return TestUtil.inRange(value, range);
|
|
51
51
|
};
|
|
52
52
|
TestUtil.inBoth = function (value, set, range) {
|
|
53
|
-
var fullRange = set_1.
|
|
53
|
+
var fullRange = set_1.RandexSetUtil.toRange(set) + range;
|
|
54
54
|
return TestUtil.inRange(value, fullRange);
|
|
55
55
|
};
|
|
56
56
|
TestUtil.isEmailValid = function (email) {
|
|
@@ -9,4 +9,12 @@ describe("randomEmail", function () {
|
|
|
9
9
|
expect(test_util_1.TestUtil.isUsernameValid(value)).toBeTruthy();
|
|
10
10
|
}
|
|
11
11
|
});
|
|
12
|
+
it("options", function () {
|
|
13
|
+
var value1 = (0, username_1.randomUsername)({ length: 5 });
|
|
14
|
+
expect(value1.length).toBe(5);
|
|
15
|
+
var value2 = (0, username_1.randomUsername)({ length: [5, 5] });
|
|
16
|
+
expect(value2.length).toBe(5);
|
|
17
|
+
var value3 = (0, username_1.randomUsername)({ length: [1, 5] });
|
|
18
|
+
expect(test_util_1.TestUtil.inNumberRange(value3.length, [1, 5])).toBeTruthy();
|
|
19
|
+
});
|
|
12
20
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "randex",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"types": "lib/index.d.ts",
|
|
@@ -26,15 +26,12 @@
|
|
|
26
26
|
"ts-jest": "^24.1.0",
|
|
27
27
|
"typescript": "^4.2.4"
|
|
28
28
|
},
|
|
29
|
-
"dependencies": {
|
|
30
|
-
"reflect-metadata": "^0.2.1"
|
|
31
|
-
},
|
|
32
29
|
"keywords": [
|
|
33
30
|
"random",
|
|
34
31
|
"random filename",
|
|
35
32
|
"random email",
|
|
36
33
|
"random username",
|
|
37
|
-
"random
|
|
34
|
+
"random name",
|
|
38
35
|
"random string"
|
|
39
36
|
]
|
|
40
37
|
}
|