refactor: remove mappers (#326)

* refactor: remove mappers

* chore: generate graphql types

* lint: remove useless import

* Remove preset-react-create-app from storybook addons

* test: remove old tests

* Upgrade storybook version

* Remove sb preset-cra and add sb svgr loader

* chore: remove figma image url from storybook

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
This commit is contained in:
Sammy Teillet
2023-06-19 16:07:16 +02:00
committed by GitHub
parent c8c4a953c2
commit 96a53ad765
27 changed files with 849 additions and 1005 deletions

View File

@ -8,7 +8,7 @@ import {
reduceSortsToOrderBy,
} from '@/filters-and-sorts/helpers';
import { SelectedFilterType } from '@/filters-and-sorts/interfaces/filters/interface';
import { mapToPerson, Person } from '@/people/interfaces/person.interface';
import { Person } from '@/people/interfaces/person.interface';
import {
defaultOrderBy,
insertPerson,
@ -50,21 +50,20 @@ export function People() {
const { data } = usePeopleQuery(orderBy, where);
const people = data?.people.map(mapToPerson) ?? [];
const people = data?.people ?? [];
async function handleAddButtonClick() {
const newPerson: Person = {
__typename: 'people',
const newPerson = {
__typename: 'Person',
id: uuidv4(),
firstname: '',
lastname: '',
email: '',
phone: '',
company: null,
pipes: [],
createdAt: new Date(),
createdAt: new Date().toISOString(),
city: '',
};
} as const;
await insertPerson(newPerson);
}

View File

@ -3,7 +3,6 @@ import { createColumnHelper } from '@tanstack/react-table';
import { EditablePeopleFullName } from '@/people/components/EditablePeopleFullName';
import { PeopleCompanyCell } from '@/people/components/PeopleCompanyCell';
import { Person } from '@/people/interfaces/person.interface';
import { updatePerson } from '@/people/services';
import { EditableDate } from '@/ui/components/editable-cell/types/EditableDate';
import { EditablePhone } from '@/ui/components/editable-cell/types/EditablePhone';
@ -19,7 +18,9 @@ import {
} from '@/ui/icons/index';
import { getCheckBoxColumn } from '@/ui/tables/utils/getCheckBoxColumn';
const columnHelper = createColumnHelper<Person>();
import { GetPeopleQueryHookResult } from '../../generated/graphql';
const columnHelper = createColumnHelper<GetPeopleQueryHookResult>();
export const usePeopleColumns = () => {
return useMemo(() => {
@ -34,7 +35,7 @@ export const usePeopleColumns = () => {
<EditablePeopleFullName
person={props.row.original}
onChange={async (firstName: string, lastName: string) => {
const person = props.row.original;
const person = { ...props.row.original };
person.firstname = firstName;
person.lastname = lastName;
await updatePerson(person);
@ -80,7 +81,7 @@ export const usePeopleColumns = () => {
placeholder="Phone"
value={props.row.original.phone || ''}
changeHandler={(value: string) => {
const person = props.row.original;
const person = { ...props.row.original };
person.phone = value;
updatePerson(person);
}}
@ -97,10 +98,14 @@ export const usePeopleColumns = () => {
),
cell: (props) => (
<EditableDate
value={props.row.original.createdAt || new Date()}
value={
props.row.original.createdAt
? new Date(props.row.original.createdAt)
: new Date()
}
changeHandler={(value: Date) => {
const person = props.row.original;
person.createdAt = value;
const person = { ...props.row.original };
person.createdAt = value.toISOString();
updatePerson(person);
}}
/>
@ -117,7 +122,7 @@ export const usePeopleColumns = () => {
placeholder="City"
content={props.row.original.city || ''}
changeHandler={(value: string) => {
const person = props.row.original;
const person = { ...props.row.original };
person.city = value;
updatePerson(person);
}}