Sammy/t 131 i see a ascending descending option in (#73)

* refactor: use safe css selector

* feature: onclick update the order option

* feature: set option in the dropdown

* feature: display icon for sort options

* refactor: indent key so react does not complain of conflicting keys

* feature: align icon and text

* feature: fix size of icon to align text

* feature: create design for TopOption in dropdown

* refactor: set font weight in style

* feature: finalise design of TopOption

* refactor: rename option to sort

* refactor: remove order from the sortType

* refactor: move sort mapper in service

* test: selection of Descending in SortDropdownButton

* refactor: fix styme-component warning

* feature: add sorting by people

* refactor: set SortFields types for tables

* feature: add sort by company

* refactor: rename sortFields to singular

* refactor: rename option to SortDirection
This commit is contained in:
Sammy Teillet
2023-04-25 16:29:08 +02:00
committed by GitHub
parent 463b5f4ec9
commit a93c92c65c
14 changed files with 270 additions and 69 deletions

View File

@ -15,28 +15,36 @@ import Checkbox from '../../components/form/Checkbox';
import HorizontalyAlignedContainer from '../../layout/containers/HorizontalyAlignedContainer';
import CompanyChip from '../../components/chips/CompanyChip';
import PersonChip from '../../components/chips/PersonChip';
import { GraphqlQueryPerson, Person } from '../../interfaces/person.interface';
import { Person } from '../../interfaces/person.interface';
import PipeChip from '../../components/chips/PipeChip';
import { SortType } from '../../components/table/table-header/SortAndFilterBar';
import EditableCell from '../../components/table/EditableCell';
import { updatePerson } from '../../services/people';
import { OrderByFields, updatePerson } from '../../services/people';
export const sortsAvailable = [
{
id: 'fullname',
label: 'People',
icon: faUser,
},
{
id: 'company_name',
label: 'Company',
icon: faBuildings,
},
{
id: 'email',
label: 'Email',
order: 'asc',
icon: faEnvelope,
},
{ id: 'phone', label: 'Phone', order: 'asc', icon: faPhone },
{ id: 'phone', label: 'Phone', icon: faPhone },
{
id: 'created_at',
label: 'Created at',
order: 'asc',
icon: faCalendar,
},
{ id: 'city', label: 'City', order: 'asc', icon: faMapPin },
] satisfies Array<SortType<keyof GraphqlQueryPerson>>;
{ id: 'city', label: 'City', icon: faMapPin },
] satisfies Array<SortType<OrderByFields>>;
const columnHelper = createColumnHelper<Person>();
export const peopleColumns = [