@prefect9/ui
Version:
UI React components
114 lines (113 loc) • 3.34 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.date = date;
exports.email = email;
exports.equal = equal;
exports.max = max;
exports.maxLength = maxLength;
exports.min = min;
exports.minLength = minLength;
exports.name = name;
exports.nickname = nickname;
exports.numbers = numbers;
exports.proxy = proxy;
exports.required = required;
exports.title = title;
exports.url = url;
require("core-js/modules/es.parse-float.js");
require("core-js/modules/es.regexp.exec.js");
require("core-js/modules/es.regexp.test.js");
require("core-js/modules/es.string.trim.js");
require("core-js/modules/web.dom-collections.iterator.js");
require("core-js/modules/web.url.js");
require("core-js/modules/web.url.to-json.js");
require("core-js/modules/web.url-search-params.js");
var _isType = require("@prefect9/is-type");
function required(errorText) {
return function required(value) {
return (0, _isType.isStr)(value) && value.trim().length ? true : errorText;
};
}
function name(errorText) {
return function name(value) {
if (value === '') return true;
return /^[a-z\s]*$/i.test(value) ? true : errorText;
};
}
function nickname(errorText) {
return function nickname(value) {
return /^[a-z0-9_\-.]*$/i.test(value) ? true : errorText;
};
}
function title(errorText) {
return function title(value) {
return /^[a-z0-9_\- ,.]*$/i.test(value) ? true : errorText;
};
}
function email(errorText) {
return function email(value) {
if (value === '') return true;
return /^[a-z0-9_.+-]+@[a-z0-9-]+\.[a-z0-9-.]+$/i.test(value) ? true : errorText;
};
}
function url(errorText) {
return function url(value) {
if (value === '') return true;
try {
new URL(value);
return true;
} catch (e) {
return errorText;
}
};
}
function proxy(errorText) {
return function proxy(value) {
if (value === '') return true;
return /^(http|https):\/\/([^:]+)(:([^@]+))?@([^:]+):(\w+)$/i.test(value) ? true : errorText;
};
}
function numbers(errorText) {
return function numbers(value) {
return /^[0-9]*$/i.test(value) ? true : errorText;
};
}
function date(errorText) {
return function date(value) {
if (value === '') return true;
return /^[0-9]{4}-[0-9]{2}-[0-9]{2}$/i.test(value) ? true : errorText;
};
}
function equal(equalValue, errorText) {
return function equal(value) {
return equalValue === value ? true : errorText;
};
}
function min(minValue, errorText) {
return function min(value) {
if (!(0, _isType.isNum)(minValue)) throw new Error('Min must be a number');
value = parseFloat(value);
if (!isFinite(value)) return errorText;
return value >= minValue ? true : errorText;
};
}
function max(maxValue, errorText) {
return function max(value) {
if (!(0, _isType.isNum)(maxValue)) throw new Error('Max must be a number');
value = parseFloat(value);
if (!isFinite(value)) return errorText;
return value <= maxValue ? true : errorText;
};
}
function minLength(length, errorText) {
return function minLength(value) {
return (0, _isType.isStr)(value) && value.length >= length ? true : errorText;
};
}
function maxLength(length, errorText) {
return function minLength(value) {
return (0, _isType.isStr)(value) && value.length <= length ? true : errorText;
};
}