react-hook-form-rules 1.6.0 → 1.7.1
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/CHANGELOG.md +39 -0
- package/dist/i18n.d.ts +2 -0
- package/dist/i18n.js +26 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.js +27 -0
- package/dist/rules/array/get-max-array-length-rule.d.ts +9 -0
- package/dist/rules/array/get-max-array-length-rule.js +17 -0
- package/dist/rules/array/get-max-array-length.d.ts +9 -0
- package/dist/rules/array/get-max-array-length.js +17 -0
- package/dist/rules/array/get-min-array-length-rule.d.ts +9 -0
- package/dist/rules/array/get-min-array-length-rule.js +17 -0
- package/dist/rules/array/get-min-array-length.d.ts +9 -0
- package/dist/rules/array/get-min-array-length.js +17 -0
- package/dist/rules/array/get-required-array-rule.d.ts +8 -0
- package/dist/rules/array/get-required-array-rule.js +15 -0
- package/dist/rules/array/tests/get-max-array-length-rule.test.d.ts +1 -0
- package/dist/rules/array/tests/get-max-array-length-rule.test.js +15 -0
- package/dist/rules/array/tests/get-min-array-length-rule.test.d.ts +1 -0
- package/dist/rules/array/tests/get-min-array-length-rule.test.js +15 -0
- package/dist/rules/array/tests/get-required-array-rule.test.d.ts +1 -0
- package/dist/rules/array/tests/get-required-array-rule.test.js +15 -0
- package/dist/rules/constants.d.ts +1 -0
- package/dist/rules/constants.js +4 -0
- package/dist/rules/default/get-max-length-rule.d.ts +11 -0
- package/dist/rules/default/get-max-length-rule.js +18 -0
- package/dist/rules/default/get-max-rule.d.ts +11 -0
- package/dist/rules/default/get-max-rule.js +16 -0
- package/dist/rules/default/get-min-length-rule.d.ts +11 -0
- package/dist/rules/default/get-min-length-rule.js +18 -0
- package/dist/rules/default/get-min-rule.d.ts +11 -0
- package/dist/rules/default/get-min-rule.js +18 -0
- package/dist/rules/default/get-require-rule.d.ts +11 -0
- package/dist/rules/default/get-require-rule.js +16 -0
- package/dist/rules/default/tests/get-max-length-rule.test.d.ts +1 -0
- package/dist/rules/default/tests/get-max-length-rule.test.js +23 -0
- package/dist/rules/default/tests/get-max-rule.test.d.ts +1 -0
- package/dist/rules/default/tests/get-max-rule.test.js +23 -0
- package/dist/rules/default/tests/get-min-length-rule.test.d.ts +1 -0
- package/dist/rules/default/tests/get-min-length-rule.test.js +23 -0
- package/dist/rules/default/tests/get-min-rule.test.d.ts +1 -0
- package/dist/rules/default/tests/get-min-rule.test.js +23 -0
- package/dist/rules/default/tests/get-required-rule.test.d.ts +1 -0
- package/dist/rules/default/tests/get-required-rule.test.js +11 -0
- package/dist/rules/get-email-rule.d.ts +17 -0
- package/dist/rules/get-email-rule.js +20 -0
- package/dist/rules/get-max-array-length.d.ts +8 -0
- package/dist/rules/get-max-array-length.js +16 -0
- package/dist/rules/get-max-length-rule.d.ts +11 -0
- package/dist/rules/get-max-length-rule.js +22 -0
- package/dist/rules/get-max-rule.d.ts +11 -0
- package/dist/rules/get-max-rule.js +15 -0
- package/dist/rules/get-min-array-length.d.ts +8 -0
- package/dist/rules/get-min-array-length.js +16 -0
- package/dist/rules/get-min-length-rule.d.ts +11 -0
- package/dist/rules/get-min-length-rule.js +22 -0
- package/dist/rules/get-min-rule.d.ts +16 -0
- package/dist/rules/get-min-rule.js +16 -0
- package/dist/rules/get-require-rule.d.ts +11 -0
- package/dist/rules/get-require-rule.js +16 -0
- package/dist/rules/get-required-array-role.d.ts +8 -0
- package/dist/rules/get-required-array-role.js +15 -0
- package/dist/rules/get-required-array-rule.d.ts +8 -0
- package/dist/rules/get-required-array-rule.js +15 -0
- package/dist/rules/get-required-object-rule.d.ts +8 -0
- package/dist/rules/get-required-object-rule.js +20 -0
- package/dist/rules/get-url-rule.d.ts +17 -0
- package/dist/rules/get-url-rule.js +20 -0
- package/dist/rules/helpers/get-min-error.d.ts +6 -0
- package/dist/rules/helpers/get-min-error.js +9 -0
- package/dist/rules/helpers/get-min-length-error.d.ts +6 -0
- package/dist/rules/helpers/get-min-length-error.js +9 -0
- package/dist/rules/link/get-email-rule.d.ts +17 -0
- package/dist/rules/link/get-email-rule.js +40 -0
- package/dist/rules/link/get-url-rule.d.ts +17 -0
- package/dist/rules/link/get-url-rule.js +20 -0
- package/dist/rules/object/get-required-object-rule.d.ts +8 -0
- package/dist/rules/object/get-required-object-rule.js +21 -0
- package/dist/rules/object/tests/get-require-object-rule.test.d.ts +1 -0
- package/dist/rules/object/tests/get-require-object-rule.test.js +15 -0
- package/dist/rules/patterns/get-email-rule.d.ts +17 -0
- package/dist/rules/patterns/get-email-rule.js +16 -0
- package/dist/rules/patterns/get-pattern-rule.d.ts +12 -0
- package/dist/rules/patterns/get-pattern-rule.js +16 -0
- package/dist/rules/patterns/get-url-rule.d.ts +17 -0
- package/dist/rules/patterns/get-url-rule.js +16 -0
- package/dist/rules/patterns/tests/get-email-rule.test.d.ts +1 -0
- package/dist/rules/patterns/tests/get-email-rule.test.js +25 -0
- package/dist/rules/patterns/tests/get-pattern-rule.test.d.ts +1 -0
- package/dist/rules/patterns/tests/get-pattern-rule.test.js +11 -0
- package/dist/rules/patterns/tests/get-url-rule.test.d.ts +1 -0
- package/dist/rules/patterns/tests/get-url-rule.test.js +25 -0
- package/jest.config.js +3 -2
- package/package.json +1 -1
- package/rules/patterns/get-email-rule.ts +1 -1
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
interface UrlRule {
|
|
2
|
+
message?: string;
|
|
3
|
+
pattern?: RegExp;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Returns a rule that validates the input URL.
|
|
7
|
+
* @param options - Parameters.
|
|
8
|
+
* @param options.pattern - Regular expression.
|
|
9
|
+
* @param options.message - Custom message.
|
|
10
|
+
*
|
|
11
|
+
* @example rules: { pattern: getUrlRule() }
|
|
12
|
+
*/
|
|
13
|
+
export declare const getUrlRule: ({ pattern, message, }: UrlRule) => {
|
|
14
|
+
value: RegExp;
|
|
15
|
+
message: string;
|
|
16
|
+
};
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getUrlRule = void 0;
|
|
4
|
+
const i18n_1 = require("../../i18n");
|
|
5
|
+
const get_pattern_rule_1 = require("./get-pattern-rule");
|
|
6
|
+
const DEFAULT_PATTERN = /(http(s)?):\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/;
|
|
7
|
+
/**
|
|
8
|
+
* Returns a rule that validates the input URL.
|
|
9
|
+
* @param options - Parameters.
|
|
10
|
+
* @param options.pattern - Regular expression.
|
|
11
|
+
* @param options.message - Custom message.
|
|
12
|
+
*
|
|
13
|
+
* @example rules: { pattern: getUrlRule() }
|
|
14
|
+
*/
|
|
15
|
+
const getUrlRule = ({ pattern = DEFAULT_PATTERN, message = (0, i18n_1.translate)('url'), }) => (0, get_pattern_rule_1.getPatternRule)(pattern, message);
|
|
16
|
+
exports.getUrlRule = getUrlRule;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const get_email_rule_1 = require("../get-email-rule");
|
|
4
|
+
const DEFAULT_MESSAGE = "Please check the correctness of the entered email address.";
|
|
5
|
+
const DEFAULT_PATTERN = /^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/;
|
|
6
|
+
describe('Тестирование функции getEmailRule', () => {
|
|
7
|
+
test('Проверка значения по умолчанию', () => {
|
|
8
|
+
expect((0, get_email_rule_1.getEmailRule)({})).toEqual({
|
|
9
|
+
message: DEFAULT_MESSAGE,
|
|
10
|
+
value: DEFAULT_PATTERN
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
test('Проверка передачи кастомного сообщения', () => {
|
|
14
|
+
expect((0, get_email_rule_1.getEmailRule)({ message: 'Custom message' })).toEqual({
|
|
15
|
+
message: 'Custom message',
|
|
16
|
+
value: DEFAULT_PATTERN
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
test('Проверка передачи камсного паттерна', () => {
|
|
20
|
+
expect((0, get_email_rule_1.getEmailRule)({ pattern: /test/ })).toEqual({
|
|
21
|
+
message: DEFAULT_MESSAGE,
|
|
22
|
+
value: /test/
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const get_pattern_rule_1 = require("../get-pattern-rule");
|
|
4
|
+
describe('Тестирование функции getEmailRule', () => {
|
|
5
|
+
test('Проверка кастомного сообщения', () => {
|
|
6
|
+
expect((0, get_pattern_rule_1.getPatternRule)(/-/, 'test message')).toEqual({
|
|
7
|
+
message: 'test message',
|
|
8
|
+
value: /-/
|
|
9
|
+
});
|
|
10
|
+
});
|
|
11
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const get_url_rule_1 = require("../get-url-rule");
|
|
4
|
+
const DEFAULT_MESSAGE = "The URL does not match the format.";
|
|
5
|
+
const DEFAULT_PATTERN = /(http(s)?):\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)/;
|
|
6
|
+
describe('Тестирование функции getEmailRule', () => {
|
|
7
|
+
test('Проверка значения по умолчанию', () => {
|
|
8
|
+
expect((0, get_url_rule_1.getUrlRule)({})).toEqual({
|
|
9
|
+
message: DEFAULT_MESSAGE,
|
|
10
|
+
value: DEFAULT_PATTERN
|
|
11
|
+
});
|
|
12
|
+
});
|
|
13
|
+
test('Проверка передачи кастомного сообщения', () => {
|
|
14
|
+
expect((0, get_url_rule_1.getUrlRule)({ message: 'Custom message' })).toEqual({
|
|
15
|
+
message: 'Custom message',
|
|
16
|
+
value: DEFAULT_PATTERN
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
test('Проверка передачи камсного паттерна', () => {
|
|
20
|
+
expect((0, get_url_rule_1.getUrlRule)({ pattern: /test/ })).toEqual({
|
|
21
|
+
message: DEFAULT_MESSAGE,
|
|
22
|
+
value: /test/
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
});
|
package/jest.config.js
CHANGED
package/package.json
CHANGED
|
@@ -14,7 +14,7 @@ interface EmailRule {
|
|
|
14
14
|
* @param {string} options.pattern - Regular expression.
|
|
15
15
|
* @param {string} options.message - Custom message.
|
|
16
16
|
*
|
|
17
|
-
* @example rules: { pattern: getEmailRule() }
|
|
17
|
+
* @example rules: { pattern: getEmailRule({}) }
|
|
18
18
|
*/
|
|
19
19
|
export const getEmailRule = ({
|
|
20
20
|
pattern = DEFAULT_PATTERN,
|