import {ProductSchema} from "../client";
import {isNil} from "lodash";
import {ProductFieldNames} from "../pages/LeadsPage/tabs/ProductAndServiceTab/components/ProductView/ProductView.tsx";

export type ObjectWithNameAndId = {
    id: number;
    name: string;
}

export type BaseFormInputProps<T> = {
    onChange: (value: T) => void;
    value: T;
    error?: string | null;
}
export const formatDate = (date: string) => {
    return new Date(date).toLocaleDateString("ru-RU");
}

export const getProductFields = (product: ProductSchema) => {
    return Object.entries(product).map(([key, value]) => {
        const fieldName = ProductFieldNames[key as keyof ProductSchema];
        if (!fieldName || isNil(value) || value === '' || !value) return;
        return [fieldName.toString(), value.toString()];
    }).filter(obj => obj !== undefined) || [];
}