Commit Graph

54 Commits

Author SHA1 Message Date
6b1548ebbe Add loader and transition for details page tabs (#5935)
Closes https://github.com/twentyhq/twenty/issues/5656



https://github.com/twentyhq/twenty/assets/22936103/3e4beea2-9aa9-4015-bb99-ee22adb53b63
2024-06-18 18:38:14 +02:00
03b3c8a67a Refactored all FieldDisplay types for performance optimization (#5768)
This PR is the second part of
https://github.com/twentyhq/twenty/pull/5693.

It optimizes all remaining field types.

The observed improvements are :
- x2 loading time improvement on table rows
- more consistent render time

Here's a summary of measured improvements, what's given here is the
average of hundreds of renders with a React Profiler component. (in our
Storybook performance stories)

| Component | Before (µs) | After (µs) |
| ----- | ------------- | --- |
| TextFieldDisplay | 127 | 83 |
| EmailFieldDisplay | 117 | 83 |
| NumberFieldDisplay | 97 | 56 |
| DateFieldDisplay | 240 | 52 |
| CurrencyFieldDisplay | 236 | 110 |
| FullNameFieldDisplay | 131 | 85 |
| AddressFieldDisplay | 118 | 81 |
| BooleanFieldDisplay | 130 | 100 |
| JSONFieldDisplay | 248 | 49 |
| LinksFieldDisplay | 1180 | 140 |
| LinkFieldDisplay | 140 | 78 |
| MultiSelectFieldDisplay | 770 | 130 |
| SelectFieldDisplay | 230 | 87 |
2024-06-12 18:36:25 +02:00
ad6547948b Activity timeline refactoring followup (#5835)
Following https://github.com/twentyhq/twenty/pull/5697, addressing
review
2024-06-12 16:21:30 +02:00
be96c68416 POC timeline activity (#5697)
TODO: 
- remove WorkspaceIsNotAuditLogged decorators on activity/activityTarget
to log task/note creations
- handle attachments
-  fix css and remove unnecessary styled components or duplicates
2024-06-11 18:53:28 +02:00
9f6a6c3282 5622 add a syncemail onboarding step (#5689)
- add sync email onboarding step
- refactor calendar and email visibility enums
- add a new table `keyValuePair` in `core` schema
- add a new resolved boolean field `skipSyncEmail` in current user




https://github.com/twentyhq/twenty/assets/29927851/de791475-5bfe-47f9-8e90-76c349fba56f
2024-06-05 18:16:53 +02:00
09bfb617b2 Right drawer to edit records (#5551)
This PR introduces a new side panel to edit records and the ability to
minimize the side panel.

The goal is leverage this sidepanel to be able to create records while
being in another show page.

I'm opening the PR for feedback since it involved refactoring and
therefore already touches a lot of files, even though it was quick to
implement.

<img width="1503" alt="Screenshot 2024-05-23 at 17 41 37"
src="https://github.com/twentyhq/twenty/assets/6399865/6f17e7a8-f4e9-4eb4-b392-c756db7198ac">
2024-06-03 17:15:05 +02:00
cfd83d6b8e [UI] Remove theme constants from twenty-front and use the ones exported from twenty-ui. (#5558)
Some parts of the Frontend used theme constants exported from
`modules/ui` while other parts used theme constants exported from
`twenty-ui`.

This PR centralizes theme constants by removing them from `modules/ui`
completely.
2024-05-25 16:09:25 +02:00
b8eef21343 [UI] Extract our ColorSample and Tag components from twenty-front to twenty-ui. (#5543)
Two more components extracted out of twenty-front: `ColorSample` and
`Tag`.
2024-05-23 07:46:31 +02:00
d1cbd709bd Extract typography components from twenty-front to twenty-ui. (#5466)
Removed the following components from twenty-front and moved them to
twenty-ui.
- H1Title.
- H2Title.
- H3Title.

Moving components in smaller chunks to ease the process of resolving
conflicts.

<img width="1255" alt="image"
src="https://github.com/twentyhq/twenty/assets/125115953/a3953659-5dfd-4d03-a6de-50b064129d55">

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-05-22 10:52:35 +02:00
c946572fde TWNTY-4203 - Improve Email Thread Visibility with Collapse/Expansion Rules (#5202)
### Description

Improve Email Thread Visibility with Collapse/Expansion Rules

### Refs
#4203

### Demo


https://github.com/twentyhq/twenty/assets/140154534/ece1d783-57ef-45c9-9895-3b4b0e02b9e2


Fixes #4203

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
2024-04-29 18:10:42 +02:00
b6d0b8a895 refactor: move Checkmark, Avatar, Chip and Tooltip to twenty-ui (#4946)
Split from https://github.com/twentyhq/twenty/pull/4518

Part of #4766
2024-04-15 12:05:06 +02:00
c0b3a8715f 4810 display participants in the right drawer of the calendar event (#4896)
Closes #4810

- Introduces a new component `ExpandableList` which uses intersection
observers to display the maximum number of elements possible
2024-04-12 10:33:46 +02:00
5d07b6347e refactor: move Tabler Icon exports to twenty-ui (#4727)
Split from https://github.com/twentyhq/twenty/pull/4518
2024-04-01 13:15:47 +02:00
fefa37b300 4488 connect calendar tab to backend (#4624)
* create states and hooks

* implement fetch more records

* add empty state

* update types

* fix error

* add fetchmoreloader and add scroll to container

* fix visibility in calendarEventFragment

* fix fetchMoreRecords

* update TIMELINE_CALENDAR_EVENTS_DEFAULT_PAGE_SIZE

* add test

* modify empty state subtitle

* replace entity by activityTargetableObject

* create useCustomResolver hook

* refactor

* refactoring

* use generic component

* rename FetchMoreLoader

* remove deprecated states and hooks

* fix typing

* update typing

* update error message

* renaming

* improve typing

* fix bug on contact creation from same company
2024-03-26 14:50:32 +01:00
cfb0cce9b8 Refactor Views by cleaning the code, relying on apolloCache and improving performances (#4516)
* Wip refactoring view

* Post merge conflicts

* Fix review

* Add create view capability

* Fix create object missing view

* Fix tests
2024-03-20 14:21:58 +01:00
872fb2bd49 TWNTY-4450 - Add tests for /modules/activities/emails (#4520)
* Add tests for `/modules/activities/emails`

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>

* Fix tests

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>

* Remove temporary changes

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
2024-03-18 17:10:07 +01:00
e8e5af6fcb fix: Close the email side panel upon clicking an open email thread (#4329)
* fix: state consistency issue while closing the email thread right drawer (#4205)

* Refactored to use useRecoilCallback in RightDrawer open/close hook

* - registered an email drawer click outside callback to memorize the thread id when drawer was closed
- added a state to memorize then event that triggered right drawer close
- added a predicate that checks if event that close email thread right drawer is not the same that the open email thread click event AND that the thread that we want to open is not the thread that is just being closed.

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-03-14 18:11:27 +01:00
581dfafe11 Renamed nullable utils into isDefined and isUndefinedOrNull (#4402)
* Renamed nullable utils into isDefined and isUndefinedOrNull
2024-03-11 14:28:57 +01:00
17511be0cf TWNTY-3794 - ESLint rule: only take explicit boolean predicates in if statements (#4354)
* ESLint rule: only take explicit boolean predicates in if statements

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Merge main

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Fix frontend linter errors

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Fix jest

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Refactor according to review

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Refactor according to review

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

* Fix lint on new code

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br>
2024-03-09 10:48:19 +01:00
f543191552 TWNTY-3825 - ESLint rule: const naming (#4171)
* ESLint rule: const naming

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev>

* Refactor according to review

Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev>

* refactor: Reverts changes on `twenty-server`

Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev>
2024-02-25 13:52:48 +01:00
917fc5bd4d 3811 add accounts loader (#3829)
* rename exports

* rename exports

* fix css

* done

* updating image
2024-02-09 15:29:11 +01:00
2ba9a209e8 3804 use email visibility to display only the shared information frontend (#3875)
* create and use component

* visibility working

* Fix click behavior for email thread previews

* Add dynamic styling to EmailThreadPreview component

* refactor to respect the convention
2024-02-08 17:49:29 +01:00
8816b7fb31 Fetch viewable thread from apollo cache (#3783)
Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-02 14:41:00 +01:00
c6c50180b7 Add animation during email message opening (#3774)
* Add animation while message opening

* Set isDisplayed as always true

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-02 14:37:46 +01:00
bd5d930be2 3706 add email loader (#3731)
* add images

* update component

* wip

* add loader cntainer

* wip

* Loader is working

* fix color and keyframes

* change loading message for threads
2024-02-01 10:15:41 +01:00
389c263e2e Design fixes + hide email tab if not a company or a person (#3720)
Design fixes + hide email tab

Co-authored-by: Thomas Trompette <thomast@twenty.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-01-31 16:55:04 +01:00
7d898f89a9 3696 add emails tab empty state on shows (#3702)
* empty inbox

* fix No Files alignment

* add animation when exiting the screen

* update calendar settings to be singular
2024-01-31 12:18:47 +01:00
9597b1ae41 Avoid fetching more emails when first query loading (#3709)
Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-31 10:25:22 +01:00
8b9d62e425 3681 avatars are not appearing in the messages and people name should be bold (#3692)
* update font weight

* fix picture not appearing
2024-01-30 17:46:25 +01:00
1838d8e6fb Use scoped recoil state for email thread page (#3699)
Use scoped recoild state for email thread page

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-30 17:08:34 +01:00
511627ccb8 Fix count avatar color + align thread preview items (#3695)
Fix count avatar and align items

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-30 15:01:12 +01:00
84b6bea2b9 Split back fetch more loader for record table and emails (#3693)
* Split back fetch more loader

* Rename loader

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-30 14:50:33 +01:00
a012ba1087 Fix message opening (#3687)
* fix

* improve styling so we can close the message by clicking on the whole header

* fix line overflowing

* fix
2024-01-30 11:56:26 +01:00
96bcddc056 Add participant avatars + remove tbody from fetchMore loader (#3679)
* Add participant avatars + remove tbody from fetchMore loader

* Update sender names

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-30 10:47:15 +01:00
c5ea2dfe1e 3675 inbox count is wrong in emailthreads (#3677)
* add type

* query total number of threads

* graphql data generate

* wip

* wip

* Fix fetch more

* fix

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-29 18:23:09 +01:00
64d0e15ada Put back timeline thread page size const (#3676)
Put timeline thread page size const

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-29 15:43:48 +01:00
9da9d1e3bd Build infinite scroll for email threads (#3666)
* Use recoil state for page info

* Remove memoization

* Remove right drawer fetch more loader

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-29 15:28:28 +01:00
c8f8327d04 fix email thread message (#3636) 2024-01-26 13:12:37 +01:00
49b22eeec6 Catch graphql errors (#3634)
* Catch graphql errors

* update according to comment
2024-01-26 11:33:48 +01:00
43b10cb00c Add record chip for sender and add receivers (#3629)
* Add record chip for sender and add receivers

* Build enum for roles

* Rename var and use string literal

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-25 18:34:19 +01:00
6004969096 3263 modify timeline messagingservice to allow the frontend to get multiple participants in a thread (#3611)
* wip

* wip

* add pagination

* wip

* wip

* wip

* update resolver

* wip

* wip

* endpoint is working but there is still work to do

* merge main

* wip

* subject is now first subject

* number of messages is working

* improving query

* fix bug

* fix bug

* added parameter

* pagination introduced a bug

* pagination is working

* fix type

* improve typing

* improve typing

* fix bug

* add displayName

* display displayName in the frontend

* move entities

* fix

* generate metadata

* add avatarUrl

* modify after comments on PR

* updates

* remove email mocks

* remove console log

* move files

* remove mock

* use constant

* use constant

* use fragments

* remove console.log

* generate

* changes made

* update DTO

* generate
2024-01-25 17:04:51 +01:00
7845e04f6b Fetch messages with hard coded thread id (#3613)
* Fetch messages with hard coded thread id

* Fix test

* Use first workspace member or person names

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-25 11:13:32 +01:00
e85f65a195 Build message threads (#3593)
* Adding message thread component

* Add state and mocks

* Rename components and use local state for messages

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-24 14:32:57 +01:00
c7ad6a0de7 [messaging] Rename body to text (#3595)
* Store HTML message

* remove console log

* [messaging] rename body to text

* use CoreObjectNameSingular
2024-01-23 19:56:42 +01:00
dc7fccb0a8 Merge messages and threads #1 (#3583)
* Merge messages and threads

* rename messageChannelSync to messageChannelMessage

* add merge logic

* remove deprecated methods

* restore enqueue GmailFullSyncJob after connectedAccount creation
2024-01-23 17:28:14 +01:00
096f005562 header component added (#3539)
* header component added

* fix css issues and date format issue

---------

Co-authored-by: bosiraphael <raphael.bosi@gmail.com>
2024-01-23 12:06:21 +01:00
004c23768c Build message thread empty right drawer (#3585)
* Trigger message thread top bar

* Rename message thread to thread

* Move all components in a directory

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-01-23 10:56:31 +01:00
ceddd211cf feat: Create a ThreadBottomBar component (#3474)
* feat: Create a ThreadBottomBar component

* capitalised share like  Share in button

* removed ButtonGroup to avoid the border-radius issue
2024-01-18 09:47:01 +01:00
c53abf2f5a Fix chromatic tests + re-enable (#3414)
* Fix chromatic tests + re-enable

* Try to run command manually

* Fix

* Fix

* Fix

* Fix

* Fix

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-01-12 18:32:00 +01:00
b112b74022 Feat/activities custom objects (#3213)
* WIP

* WIP - MultiObjectSearch

* WIP

* WIP

* Finished working version

* Fix

* Fixed and cleaned

* Fix

* Disabled files and emails for custom objects

* Cleaned console.log

* Fixed attachment

* Fixed

* fix lint

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-01-05 09:08:33 +01:00