import dayjs from 'dayjs'; import _ from 'lodash'; export default { filesFormatter(arr) { if (!arr || !arr.length) return []; return arr.map((item) => item); }, imageFormatter(arr) { if (!arr || !arr.length) return []; return arr.map((item) => ({ publicUrl: item.publicUrl || '', })); }, oneImageFormatter(arr) { if (!arr || !arr.length) return ''; return arr[0].publicUrl || ''; }, dateFormatter(date) { if (!date) return ''; return dayjs(date).format('YYYY-MM-DD'); }, dateTimeFormatter(date) { if (!date) return ''; return dayjs(date).format('YYYY-MM-DD HH:mm'); }, booleanFormatter(val) { return val ? 'Yes' : 'No'; }, dataGridEditFormatter(obj) { return _.transform(obj, (result, value, key) => { if (_.isArray(value)) { result[key] = _.map(value, 'id'); } else if (_.isObject(value)) { result[key] = value.id; } else { result[key] = value; } }); }, usersManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.firstName); }, usersOneListFormatter(val) { if (!val) return ''; return val.firstName; }, usersManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.firstName }; }); }, usersOneListFormatterEdit(val) { if (!val) return ''; return { label: val.firstName, id: val.id }; }, categoriesManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, categoriesOneListFormatter(val) { if (!val) return ''; return val.name; }, categoriesManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, categoriesOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, projectsManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, projectsOneListFormatter(val) { if (!val) return ''; return val.name; }, projectsManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, projectsOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, tasksManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.title); }, tasksOneListFormatter(val) { if (!val) return ''; return val.title; }, tasksManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.title }; }); }, tasksOneListFormatterEdit(val) { if (!val) return ''; return { label: val.title, id: val.id }; }, rolesManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, rolesOneListFormatter(val) { if (!val) return ''; return val.name; }, rolesManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, rolesOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, permissionsManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, permissionsOneListFormatter(val) { if (!val) return ''; return val.name; }, permissionsManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, permissionsOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, organizationsManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, organizationsOneListFormatter(val) { if (!val) return ''; return val.name; }, organizationsManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, organizationsOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, tagsManyListFormatter(val) { if (!val || !val.length) return []; return val.map((item) => item.name); }, tagsOneListFormatter(val) { if (!val) return ''; return val.name; }, tagsManyListFormatterEdit(val) { if (!val || !val.length) return []; return val.map((item) => { return { id: item.id, label: item.name }; }); }, tagsOneListFormatterEdit(val) { if (!val) return ''; return { label: val.name, id: val.id }; }, };