export declare const formatterString = "\nconst monthToShortMon = {\n \"1\": \"Jan\",\n \"2\": \"Feb\",\n \"3\": \"Mar\",\n \"4\": \"Apr\",\n \"5\": \"May\",\n \"6\": \"Jun\",\n \"7\": \"Jul\",\n \"8\": \"Aug\",\n \"9\": \"Sep\",\n \"10\": \"Oct\",\n \"11\": \"Nov\",\n \"12\": \"Dec\",\n};\nconst invalidDateStr = \"Invalid Date\";\nexport function formatDate(date, dateFormat) {\n if (date === undefined || date === null) {\n return date;\n }\n const validDate = new Date(Date.parse(date));\n if (validDate.toString() === invalidDateStr) {\n return date;\n }\n const splitDate = date.split(/-|\\+|Z/);\n const year = splitDate[0];\n const month = splitDate[1];\n const day = splitDate[2];\n const truncatedMonth = month.replace(/^0+/, \"\");\n switch (dateFormat) {\n case \"locale\":\n return validDate.toLocaleDateString();\n case \"YYYY.MM.DD\":\n return `${year}.${month}.${day}`;\n case \"DD.MM.YYYY\":\n return `${day}.${month}.${year}`;\n case \"MM/DD/YYYY\":\n return `${month}/${day}/${year}`;\n case \"Mmm DD, YYYY\":\n return `${monthToShortMon[truncatedMonth]} ${day}, ${year}`;\n default:\n return date;\n }\n}\nexport function formatTime(time, timeFormat) {\n if (time === undefined || time === null) {\n return time;\n }\n const splitTime = time.split(/:|Z/);\n if (splitTime.length < 3) {\n return time;\n }\n const validTime = new Date();\n validTime.setHours(Number.parseInt(splitTime[0], 10));\n validTime.setMinutes(Number.parseInt(splitTime[1], 10));\n const splitSeconds = splitTime[2].split(\".\");\n validTime.setSeconds(Number.parseInt(splitSeconds[0], 10), Number.parseInt(splitSeconds[1], 10));\n if (validTime.toString() === invalidDateStr) {\n return time;\n }\n\n switch (timeFormat) {\n case \"locale\":\n return validTime.toLocaleTimeString();\n case \"hours24\":\n return validTime.toLocaleTimeString(\"en-gb\");\n case \"hours12\":\n return validTime.toLocaleTimeString(\"en-us\");\n default:\n return time;\n }\n}\nexport function formatDateTime(dateTimeStr, dateTimeFormat) {\n if (dateTimeStr === undefined || dateTimeStr === null) {\n return dateTimeStr;\n }\n const dateTime = /^\\d+$/.test(dateTimeStr)\n ? new Date(Number.parseInt(dateTimeStr, 10))\n : new Date(Date.parse(dateTimeStr));\n if (dateTime.toString() === invalidDateStr) {\n return dateTimeStr;\n }\n if (dateTimeFormat === \"locale\") {\n return dateTime.toLocaleString();\n }\n const dateAndTime = dateTime.toISOString().split(\"T\");\n const date = formatDate(dateAndTime[0], dateTimeFormat.dateFormat);\n const time = formatTime(dateAndTime[1], dateTimeFormat.timeFormat);\n return `${date} - ${time}`;\n}\nexport function formatter(value, formatterInput) {\n switch (formatterInput.type) {\n case \"DateFormat\":\n return formatDate(value, formatterInput.format);\n case \"DateTimeFormat\":\n return formatDateTime(value, formatterInput.format);\n case \"TimeFormat\":\n return formatTime(value, formatterInput.format);\n default:\n return value;\n }\n}";