{"version":3,"file":"CellValue.mjs","sources":["../../../../../../admin/src/pages/ListView/components/TableCells/CellValue.tsx"],"sourcesContent":["import parseISO from 'date-fns/parseISO';\nimport toString from 'lodash/toString';\nimport { useIntl } from 'react-intl';\n\nimport type { Schema } from '@strapi/types';\n\ninterface CellValueProps {\n  type: Schema.Attribute.Kind | 'custom';\n  value: any;\n}\n\nconst CellValue = ({ type, value }: CellValueProps) => {\n  const { formatDate, formatTime, formatNumber } = useIntl();\n  let formattedValue = value;\n\n  if (type === 'date') {\n    formattedValue = formatDate(parseISO(value), { dateStyle: 'full' });\n  }\n\n  if (type === 'datetime') {\n    formattedValue = formatDate(value, { dateStyle: 'full', timeStyle: 'short' });\n  }\n\n  if (type === 'time') {\n    const [hour, minute, second] = value.split(':');\n    const date = new Date();\n    date.setHours(hour);\n    date.setMinutes(minute);\n    date.setSeconds(second);\n\n    formattedValue = formatTime(date, {\n      timeStyle: 'short',\n    });\n  }\n\n  if (['float', 'decimal'].includes(type)) {\n    formattedValue = formatNumber(value, {\n      // Should be kept in sync with the corresponding value\n      // in the design-system/NumberInput: https://github.com/strapi/design-system/blob/main/packages/strapi-design-system/src/NumberInput/NumberInput.js#L53\n      maximumFractionDigits: 20,\n    });\n  }\n\n  if (['integer', 'biginteger'].includes(type)) {\n    formattedValue = formatNumber(value, { maximumFractionDigits: 0 });\n  }\n\n  return toString(formattedValue);\n};\n\nexport { CellValue };\nexport type { CellValueProps };\n"],"names":["CellValue","type","value","formatDate","formatTime","formatNumber","useIntl","formattedValue","parseISO","dateStyle","timeStyle","hour","minute","second","split","date","Date","setHours","setMinutes","setSeconds","includes","maximumFractionDigits","toString"],"mappings":";;;;AAWA,MAAMA,YAAY,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAkB,GAAA;AAChD,IAAA,MAAM,EAAEC,UAAU,EAAEC,UAAU,EAAEC,YAAY,EAAE,GAAGC,OAAAA,EAAAA;AACjD,IAAA,IAAIC,cAAiBL,GAAAA,KAAAA;AAErB,IAAA,IAAID,SAAS,MAAQ,EAAA;QACnBM,cAAiBJ,GAAAA,UAAAA,CAAWK,SAASN,KAAQ,CAAA,EAAA;YAAEO,SAAW,EAAA;AAAO,SAAA,CAAA;AACnE;AAEA,IAAA,IAAIR,SAAS,UAAY,EAAA;AACvBM,QAAAA,cAAAA,GAAiBJ,WAAWD,KAAO,EAAA;YAAEO,SAAW,EAAA,MAAA;YAAQC,SAAW,EAAA;AAAQ,SAAA,CAAA;AAC7E;AAEA,IAAA,IAAIT,SAAS,MAAQ,EAAA;AACnB,QAAA,MAAM,CAACU,IAAMC,EAAAA,MAAAA,EAAQC,OAAO,GAAGX,KAAAA,CAAMY,KAAK,CAAC,GAAA,CAAA;AAC3C,QAAA,MAAMC,OAAO,IAAIC,IAAAA,EAAAA;AACjBD,QAAAA,IAAAA,CAAKE,QAAQ,CAACN,IAAAA,CAAAA;AACdI,QAAAA,IAAAA,CAAKG,UAAU,CAACN,MAAAA,CAAAA;AAChBG,QAAAA,IAAAA,CAAKI,UAAU,CAACN,MAAAA,CAAAA;AAEhBN,QAAAA,cAAAA,GAAiBH,WAAWW,IAAM,EAAA;YAChCL,SAAW,EAAA;AACb,SAAA,CAAA;AACF;IAEA,IAAI;AAAC,QAAA,OAAA;AAAS,QAAA;KAAU,CAACU,QAAQ,CAACnB,IAAO,CAAA,EAAA;AACvCM,QAAAA,cAAAA,GAAiBF,aAAaH,KAAO,EAAA;;;YAGnCmB,qBAAuB,EAAA;AACzB,SAAA,CAAA;AACF;IAEA,IAAI;AAAC,QAAA,SAAA;AAAW,QAAA;KAAa,CAACD,QAAQ,CAACnB,IAAO,CAAA,EAAA;AAC5CM,QAAAA,cAAAA,GAAiBF,aAAaH,KAAO,EAAA;YAAEmB,qBAAuB,EAAA;AAAE,SAAA,CAAA;AAClE;AAEA,IAAA,OAAOC,QAASf,CAAAA,cAAAA,CAAAA;AAClB;;;;"}