import { __ } from "@wordpress/i18n"; import ChildPanelBody from "../childPanelBody/childPanelBody"; import InputControl from "../inputControl/inputControl"; import SelectField from "../selectField/selectField"; import { getObjectValuesToJsArray } from "../../blocks/shared/helpFn"; const CustomFields = ({ props }) => { const { data, resetButton, updateCustomFieldsData, metaKeysSelectOptions } = props; const { id, key, value, operator, type } = data; const textOperators = [ { label: "Equal (=)", value: "=" }, { label: "Not Equal (!=)", value: "!=" }, { label: "Like", value: "LIKE" }, { label: "Not Like", value: "NOT LIKE" }, { label: "In", value: "IN" }, { label: "Not In", value: "NOT IN" }, { label: "Exists", value: "EXISTS" }, { label: "Not Exists", value: "NOT EXISTS" }, ]; const numberOperators = [ { label: "Equal (=)", value: "=" }, { label: "Not Equal (!=)", value: "!=" }, { label: "Greater (>)", value: ">" }, { label: "Greater or Equal (>=)", value: ">=" }, { label: "Less (<)", value: "<" }, { label: "Less or Equal (<=)", value: "<=" }, { label: "In", value: "IN" }, { label: "Not In", value: "NOT IN" }, { label: "Between", value: "BETWEEN" }, { label: "Not Between", value: "NOT BETWEEN" }, { label: "Exists", value: "EXISTS" }, { label: "Not Exists", value: "NOT EXISTS" }, ]; const dateOperators = [ { label: "Today", value: "TODAY" }, { label: "Now and Past", value: "NOW_PAST" }, { label: "Now and Future", value: "NOW_FUTURE" }, { label: "In the past", value: "IN_PAST" }, { label: "Equal(=)", value: "=" }, { label: "Not Equal(!=)", value: "!=" }, { label: "Greater(>)", value: ">" }, { label: "Greater or Equal (>=)", value: ">=" }, { label: "Less (<)", value: "<" }, { label: "Less or Equal (<=)", value: "<=" }, { label: "Between", value: "BETWEEN" }, { label: "Not Between", value: "NOT BETWEEN" }, { label: "Exists", value: "EXISTS" }, { label: "Not Exists", value: "NOT EXISTS" }, ]; const booleanOperators = [ { label: "Equal(=)", value: "=" }, { label: "Not Equal(!=)", value: "!=" }, { label: "Exists", value: "EXISTS" }, { label: "Not Exists", value: "NOT EXISTS" }, ]; const inputTypesData = { CHAR: { value: textOperators, input: "text", }, NUMERIC: { value: numberOperators, input: "number", }, DATE: { value: dateOperators, input: "date", }, BOOLEAN: { value: booleanOperators, input: "dropdown", }, }; const operatorValues = inputTypesData[type]?.value; const inputType = inputTypesData[type]?.input; const metaTitle = key && key.trim() ? key : __("Select Field Key", "post-carousel"); return (