In place edit company info (#90)

* Add update company functionality

* Fix padding in cells with chips

* Add icons to table headers
This commit is contained in:
Anders Borch
2023-04-28 08:50:04 +02:00
committed by GitHub
parent d5c1bd6365
commit 27070b374e
6 changed files with 92 additions and 26 deletions

View File

@ -48,6 +48,7 @@ describe('mapCompany', () => {
expect(company.name).toBe('ACME');
expect(company.domain_name).toBe('exmaple.com');
expect(company.creationDate).toEqual(now);
expect(company.accountOwner).toBeUndefined();
expect(company.employees).toBe(10);
expect(company.address).toBe(
'1 Infinite Loop, 95014 Cupertino, California, USA',
@ -76,11 +77,9 @@ describe('mapCompany', () => {
expect(company.name).toBe('ACME');
expect(company.domain_name).toBe('exmaple.com');
expect(company.created_at).toEqual(now.toUTCString());
expect(company.account_owner?.id).toBe(
expect(company.account_owner_id).toBe(
'522d4ec4-c46b-4360-a0a7-df8df170be81',
);
expect(company.account_owner?.email).toBe('john@example.com');
expect(company.account_owner?.displayName).toBe('John Doe');
expect(company.employees).toBe(10);
expect(company.address).toBe(
'1 Infinite Loop, 95014 Cupertino, California, USA',
@ -103,6 +102,7 @@ describe('mapCompany', () => {
expect(company.name).toBe('ACME');
expect(company.domain_name).toBe('exmaple.com');
expect(company.created_at).toEqual(now.toUTCString());
expect(company.account_owner_id).toBeUndefined();
expect(company.employees).toBe(10);
expect(company.address).toBe(
'1 Infinite Loop, 95014 Cupertino, California, USA',

View File

@ -32,6 +32,16 @@ export type GraphqlQueryCompany = {
created_at: string;
};
export type GraphqlMutationCompany = {
id: string;
name: string;
domain_name: string;
account_owner_id?: string;
employees: number;
address: string;
created_at: string;
};
export const mapCompany = (company: GraphqlQueryCompany): Company => ({
...company,
name: company.name,
@ -51,16 +61,10 @@ export const mapCompany = (company: GraphqlQueryCompany): Company => ({
opportunities: [{ name: 'Sales Pipeline', icon: '' }],
});
export const mapGqlCompany = (company: Company): GraphqlQueryCompany => ({
export const mapGqlCompany = (company: Company): GraphqlMutationCompany => ({
...company,
name: company.name,
domain_name: company.domain_name,
created_at: company.creationDate.toUTCString(),
account_owner: company.accountOwner
? {
id: company.accountOwner.id,
email: company.accountOwner.email,
displayName: `${company.accountOwner.first_name} ${company.accountOwner.last_name}`,
}
: undefined,
account_owner_id: company.accountOwner?.id,
});