Commit Graph

168 Commits

Author SHA1 Message Date
89dc5b4d60 Make full name editable on People page (#100)
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 18:38:29 +02:00
f6b691945c Make phone editable on people's page (#98)
* Make phone editable on people's page

* Make City editable

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 17:27:27 +02:00
e65fd3d6a5 Update Edit Inplace behavior and style (#97)
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 16:03:13 +02:00
3605c0034c feature: display only 5 results in filter search (#96)
* feature: display only 5 results in filter search

* feature: Display laoding in a dropdown item

* test: use testid insread of text
2023-05-04 12:58:43 +00:00
6a8a8f0728 Add Filters on Table views (#95)
* 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>
2023-05-04 13:54:46 +02:00
27d5edc031 Fetch workspace and user from database (#94)
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 11:09:06 +02:00
9bc3aa1fb9 Replace Fontawesome Pro by React-Icons/FA (#93)
* Fontawesome -> ReactIcons cleanup

* No need for npmrc anymore

* Complete migration

* Fix tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-03 17:24:07 +02:00
f28edd405f I can open the project in GitHub (#92)
* 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>
2023-05-03 11:34:10 +02:00
27070b374e In place edit company info (#90)
* Add update company functionality

* Fix padding in cells with chips

* Add icons to table headers
2023-04-28 06:50:04 +00:00
d5c1bd6365 Handle missing account owner (#89) 2023-04-28 07:40:40 +02:00
571cb6ed5c Style filter key in bold in filter and search bar (#86)
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-27 17:28:17 +02:00
d4b1b2f661 Companies table (#79)
* 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
2023-04-27 12:46:43 +02:00
35cf3ee801 Sammy/t 138 when i select an option i see it (#84)
* feature: remove selected filter item

* feature: add searchable field in dropdown
2023-04-26 19:10:05 +02:00
cabe6d4c36 Add empty opportunity page (#83)
* Add empty opportunity page

* Fix coverage

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-26 18:00:06 +02:00
884080a9da refactor: extract render into methods (#81) 2023-04-26 17:38:05 +02:00
04051e737f Fix long table scroll 2023-04-26 17:29:00 +02:00
6c7eb53333 Add seeds and move to uuid (#80)
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-26 16:42:01 +02:00
5aec7ca730 Sammy/t 134 i see all filters in the dropdown (#78)
* 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
2023-04-26 14:19:34 +00:00
1c8a4058c3 Fix html entities and newline handling (#77)
* 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>
2023-04-26 11:58:40 +02:00
ae7bad65ca Setup GraphQL Code Generator (#74)
* chore: add types of schema

* Ease codegen use on FE

* chore: ignore prettier in generated files

* lint: generated files

* feature: strongly type filter of query

* chore: ignore generated files in prettier

* chore: eslint ignore generated files

---------

Co-authored-by: Sammy Teillet <sammy.teillet@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-25 17:25:30 +02:00
a93c92c65c 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
2023-04-25 16:29:08 +02:00
463b5f4ec9 Mock apollo client.
Remove unit test argument.
2023-04-25 12:55:27 +02:00
a6254197b1 Add contenteditable change event test 2023-04-25 12:55:27 +02:00
4e517fa8f9 Add map back to gql person 2023-04-25 12:55:27 +02:00
443f8ed663 Added update test 2023-04-25 12:55:27 +02:00
8ed09d61ef Refactor GraphqlPerson to GraphqlQueryPerson
A GraphqlQueryPerson has an id which is used in mutations.
2023-04-25 12:55:27 +02:00
b6c7149b66 Use EditableCell for email 2023-04-25 12:55:27 +02:00
b62fac3aee Map Person to GraphqlMutationPerson 2023-04-25 12:55:27 +02:00
38132749c2 Add updatePerson function 2023-04-25 12:55:27 +02:00
24a228bd44 Add EditableCell 2023-04-25 12:55:27 +02:00
cf9afcc90f Merge pull request #71 from twentyhq/cbo-design-fixes
Fix small design feedbacks
2023-04-25 12:16:34 +02:00
8de2d345ed Add horizontal scroll on tables 2023-04-25 12:14:31 +02:00
63feef5727 Fix small design feedbacks 2023-04-25 11:34:04 +02:00
67e4e79623 Merge pull request #69 from twentyhq/sammy/t-130-when-a-sort-is-selected-i-see-the-sort
feature: add property isActive for dropdown buttons
2023-04-24 18:39:35 +02:00
f7c53dbdeb feature: set the right sort on click 2023-04-24 18:17:01 +02:00
0f4dcc1957 refactor: extract dropdown for Sort dropdown 2023-04-24 18:05:29 +02:00
795f9e7af8 refactor: create SortDropdownButton 2023-04-24 17:35:43 +02:00
7cf1f913b0 feature: add property isActive for dropdown buttons 2023-04-24 17:01:26 +02:00
d4152fdcff Merge pull request #68 from twentyhq/cbo-add-user-to-workspaces-on-signup
Assign user to workspace on signin
2023-04-24 17:01:24 +02:00
19385e00c0 feature: fix background color of dropdown item to be fully transparent 2023-04-24 15:39:36 +02:00
4e3acf21d2 feature: set the right border radius for dropdown items 2023-04-24 15:29:24 +02:00
bb8f61212b feature: add all the sortable fields for people 2023-04-24 15:01:18 +02:00
19903219c3 refactor: move sorts in peolpe-table 2023-04-24 14:59:53 +02:00
99aa39f2ba refactor: keep type of sortsAvailable while having type assertion 2023-04-24 14:57:57 +02:00
c3da5fa5f4 feature: put react app in strict mode 2023-04-24 14:56:44 +02:00
6e353f590c feature: add email in sorts fields 2023-04-24 14:56:20 +02:00
6d2c8bbdf9 Assign user to workspace on signin 2023-04-24 14:53:48 +02:00
a5909bd6ff feature: keep callbacks between two renders 2023-04-24 14:49:40 +02:00
2acd98370d bugfix: remove infinite renderloop of onSortUpdate 2023-04-24 14:46:39 +02:00
c7dc9cf83b bugfix: fix direction and zindex of dropdown 2023-04-24 14:18:22 +02:00