kwikui
Version:
KwikID's UI Component Library in Angular
42 lines • 5.23 kB
JavaScript
import { VKwikUIInputDateRangeSize } from "./input-date-range.definitions";
export const isValidKeyValue = (key, value) => {
const isBoolean = (x) => typeof x === "boolean";
const isString = (x) => typeof x === "string";
const validateDate = (date) => {
return (date.hasOwnProperty("day") &&
date.hasOwnProperty("month") &&
date.hasOwnProperty("year"));
};
const validateDateLength = (date) => {
if (date == null) {
return true;
}
if (date.hasOwnProperty("day") ||
date.hasOwnProperty("month") ||
date.hasOwnProperty("year")) {
return true;
}
return false;
};
const methods = {
disabled: isBoolean,
focus: isBoolean,
formControlName: isString,
hintContent: isString,
icon: isString,
id: isString,
invalid: isBoolean,
isShowLabelOutside: isBoolean,
label: isString,
max: validateDate,
maxLength: validateDateLength,
min: validateDate,
minLength: validateDateLength,
placeholder: isString,
postfix: isString,
prefix: isString,
size: (x) => VKwikUIInputDateRangeSize.includes(x)
};
return methods[key] && methods[key](value);
};
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtZGF0ZS1yYW5nZS52YWxpZGF0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva3dpa3VpL3NyYy9saWIvY29tcG9uZW50cy9jb3JlL2lucHV0cy9pbnB1dC1kYXRlLXJhbmdlL2lucHV0LWRhdGUtcmFuZ2UudmFsaWRhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwseUJBQXlCLEVBQzFCLE1BQU0sZ0NBQWdDLENBQUM7QUFFeEMsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHLENBQUMsR0FBVyxFQUFFLEtBQVUsRUFBVyxFQUFFO0lBQ2xFLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBVSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxTQUFTLENBQUM7SUFDekQsTUFBTSxRQUFRLEdBQUcsQ0FBQyxDQUFTLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsQ0FBQztJQUN0RCxNQUFNLFlBQVksR0FBRyxDQUFDLElBQVMsRUFBVyxFQUFFO1FBQzFDLE9BQU8sQ0FDTCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztZQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUM1QixDQUFDO0lBQ0osQ0FBQyxDQUFDO0lBQ0YsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLElBQVMsRUFBVyxFQUFFO1FBQ2hELElBQUksSUFBSSxJQUFJLElBQUksRUFBRTtZQUNoQixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsSUFDRSxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztZQUMxQixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQztZQUM1QixJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxFQUMzQjtZQUNBLE9BQU8sSUFBSSxDQUFDO1NBQ2I7UUFDRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUMsQ0FBQztJQUVGLE1BQU0sT0FBTyxHQUFHO1FBQ2QsUUFBUSxFQUFFLFNBQVM7UUFDbkIsS0FBSyxFQUFFLFNBQVM7UUFDaEIsZUFBZSxFQUFFLFFBQVE7UUFDekIsV0FBVyxFQUFFLFFBQVE7UUFDckIsSUFBSSxFQUFFLFFBQVE7UUFDZCxFQUFFLEVBQUUsUUFBUTtRQUNaLE9BQU8sRUFBRSxTQUFTO1FBQ2xCLGtCQUFrQixFQUFFLFNBQVM7UUFDN0IsS0FBSyxFQUFFLFFBQVE7UUFDZixHQUFHLEVBQUUsWUFBWTtRQUNqQixTQUFTLEVBQUUsa0JBQWtCO1FBQzdCLEdBQUcsRUFBRSxZQUFZO1FBQ2pCLFNBQVMsRUFBRSxrQkFBa0I7UUFDN0IsV0FBVyxFQUFFLFFBQVE7UUFDckIsT0FBTyxFQUFFLFFBQVE7UUFDakIsTUFBTSxFQUFFLFFBQVE7UUFDaEIsSUFBSSxFQUFFLENBQUMsQ0FBNEIsRUFBRSxFQUFFLENBQ3JDLHlCQUF5QixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7S0FDeEMsQ0FBQztJQUVGLE9BQU8sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQztBQUM3QyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUS3dpa1VJSW5wdXREYXRlUmFuZ2VTaXplLFxuICBWS3dpa1VJSW5wdXREYXRlUmFuZ2VTaXplXG59IGZyb20gXCIuL2lucHV0LWRhdGUtcmFuZ2UuZGVmaW5pdGlvbnNcIjtcblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRLZXlWYWx1ZSA9IChrZXk6IHN0cmluZywgdmFsdWU6IGFueSk6IGJvb2xlYW4gPT4ge1xuICBjb25zdCBpc0Jvb2xlYW4gPSAoeDogYm9vbGVhbikgPT4gdHlwZW9mIHggPT09IFwiYm9vbGVhblwiO1xuICBjb25zdCBpc1N0cmluZyA9ICh4OiBzdHJpbmcpID0+IHR5cGVvZiB4ID09PSBcInN0cmluZ1wiO1xuICBjb25zdCB2YWxpZGF0ZURhdGUgPSAoZGF0ZTogYW55KTogYm9vbGVhbiA9PiB7XG4gICAgcmV0dXJuIChcbiAgICAgIGRhdGUuaGFzT3duUHJvcGVydHkoXCJkYXlcIikgJiZcbiAgICAgIGRhdGUuaGFzT3duUHJvcGVydHkoXCJtb250aFwiKSAmJlxuICAgICAgZGF0ZS5oYXNPd25Qcm9wZXJ0eShcInllYXJcIilcbiAgICApO1xuICB9O1xuICBjb25zdCB2YWxpZGF0ZURhdGVMZW5ndGggPSAoZGF0ZTogYW55KTogYm9vbGVhbiA9PiB7XG4gICAgaWYgKGRhdGUgPT0gbnVsbCkge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGlmIChcbiAgICAgIGRhdGUuaGFzT3duUHJvcGVydHkoXCJkYXlcIikgfHxcbiAgICAgIGRhdGUuaGFzT3duUHJvcGVydHkoXCJtb250aFwiKSB8fFxuICAgICAgZGF0ZS5oYXNPd25Qcm9wZXJ0eShcInllYXJcIilcbiAgICApIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH07XG5cbiAgY29uc3QgbWV0aG9kcyA9IHtcbiAgICBkaXNhYmxlZDogaXNCb29sZWFuLFxuICAgIGZvY3VzOiBpc0Jvb2xlYW4sXG4gICAgZm9ybUNvbnRyb2xOYW1lOiBpc1N0cmluZyxcbiAgICBoaW50Q29udGVudDogaXNTdHJpbmcsXG4gICAgaWNvbjogaXNTdHJpbmcsXG4gICAgaWQ6IGlzU3RyaW5nLFxuICAgIGludmFsaWQ6IGlzQm9vbGVhbixcbiAgICBpc1Nob3dMYWJlbE91dHNpZGU6IGlzQm9vbGVhbixcbiAgICBsYWJlbDogaXNTdHJpbmcsXG4gICAgbWF4OiB2YWxpZGF0ZURhdGUsXG4gICAgbWF4TGVuZ3RoOiB2YWxpZGF0ZURhdGVMZW5ndGgsXG4gICAgbWluOiB2YWxpZGF0ZURhdGUsXG4gICAgbWluTGVuZ3RoOiB2YWxpZGF0ZURhdGVMZW5ndGgsXG4gICAgcGxhY2Vob2xkZXI6IGlzU3RyaW5nLFxuICAgIHBvc3RmaXg6IGlzU3RyaW5nLFxuICAgIHByZWZpeDogaXNTdHJpbmcsXG4gICAgc2l6ZTogKHg6IFRLd2lrVUlJbnB1dERhdGVSYW5nZVNpemUpID0+XG4gICAgICBWS3dpa1VJSW5wdXREYXRlUmFuZ2VTaXplLmluY2x1ZGVzKHgpXG4gIH07XG5cbiAgcmV0dXJuIG1ldGhvZHNba2V5XSAmJiBtZXRob2RzW2tleV0odmFsdWUpO1xufTtcbiJdfQ==