* bugfix: use original row id in cells to make sure it rerenders
* feature: implement multiple sorts
* bugfix: recreate new array to make sure component rerenders
* feature: orderBy is an array to keep orders
* test: snapshot the searchTemplate methods
* feature: remove the console log and return undefined
* feature: use orderByTemplate instead of hardcoded orderBy
* refactor: move sort and where filters helpers out of service
* refactor: rename file helper
* refactor: move assert function in test
* feature: add email filter
* feature: add city filter
* test: fix company search tests
* test: use the right value in test
* refactor: test all the filters in a loop
* feature: add operand list to filters
* feature: implement not include
* feature: add operand on filters
* feature: use filters operand instead of defaults
* test: adapt test with new operands
* refactor: remove useless %% in gql where
* test: test fullname filter
* test: add test for where rendering of filters
* Add filter search logic
WIP Filter search
Implement filters
test: fix sorts tests
test: fix filter test
feature: search person and display firstname in results
feature: fix test for filter component
test: mock search filters
refactor: create a useSearch hook
refactor: move debounce in useSearch and reset status of filter selection
feature: debounce set filters
refactor: remove useless setSorts
feature: add where variable to people query
feature: strongly type Filters
feature: update WhereTemplate method
feature: implement filtering on full name
feature: type the useSearch hook
feature: use where reducer
refactor: create a type for readability
feature: use query and mapper from filters
feature: implement filter by company
feature: search filter results on filter select
feature: add loading and results to search results in filters
refactor: move render search results in a function
feature: display a LOADING when it loads
feature: split search input and search filter for different debounce
refactor: remove some warnings
refactor: remove some warnings
* Write test 1
* Write test 2
* test: useSearch is tested
* test: update names of default people data
* test: add a filter search
* Test 3
* Fix tests
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Ignore node_modules
* Use bash-compatible dotenv format
While still being compatible with dotenv, this
also allows sourcing the file to export all
variables in bash.
* Add prettier extension to recommendations
* Move to port 5001 to avoid conflict with macOS services
* Add workspace
* Add devcontainer
This automatically starts with all environment
variables available locally.
It brings up services which are dependent on each
other individually and verifies health before
moving on to the next service.
* Split init into clean, up, and logs tasks.
This allows the developer to set up .env and .npmrc
files before running services, and does not require
starting from a clean db every time the devcontainer
is restarted.
* Copy .env when creating codespace
* Automatically run UP command upon devcontainer creation
* Fix log message
---------
Co-authored-by: Felix Malfait <felix.malfait@gmail.com>
* Add columns to companies:
* account_owner_id
* employees
* address
Add foreign key constraint companies_account_owner_id_fkey
to auth.users.id
* Add select permissions to:
* account_owner_id
* employees
* address
Add relationship between companies and auth.users.
* Update Companies interface to include:
* account_owner_id
* employees
* address
Opportunity is expected to be replace by actual opportunity in a separate PR.
* Add GetCompanies query
* Add initial companies table
* Update test to use mock apollo provider
* Update to match changed company column names
* Add company interface mapping tests
* Test entire object
* Add test for companies being rendered in table.
* Add test for sorting reduce.
* Fix prettier errors
* Propose new doc architecture
* Many improvements to documentation (styling, structure...)
* Remove modules added inadvertently + continue improving styling
* Swizzle navbar item to add support for custom icon
* Additional doc styling
* Setup docs for API and redirect homepage for docs
* feature: add filter dropdown
* test: add story for FilterDropdown
* feature: display filterOperand on top of dropdown
* feature: display filter operand
* feature: fix index and display selected filter
* refactor: set TopOption button inside dropdown file
* feature: move availableFilters outside the fitler component
* refactor: make the available sorts and filter optionnal
* refactor: rename availableSorts
* feature: add a resetState property on onOutsideClick
* feature: add filters and set filters on Dropdown component
* feature: set filters on click in dropdown
* test: verify button is active after filters are set
* feature: display sorts and filters
* refactor: move SelectedFilters in SortAndFilter
* refactor: move SelectedFilters in dedicated file
* refactor: remove Id and use Key
* Fix html entities and newline handling
This forces contenteditable to behave as single line input,
and properly handles html entities.
* Proposal without reacteditable
* Fix tests and re-add focus styleé
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Fix compose syntax error
It turns out that docker compose does not like a literal `true`
but it will accept a `"true"` string.
* Added missing && operators
* 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