Commit Graph

714 Commits

Author SHA1 Message Date
Abdullah
d14bb2ea11
Add linter to Chrome Extension (#4044). (#4174)
* feat: configure eslint rules by replicating those in the twenty-front package and introduce scripts for linting, formatting code and removing build output

* fix: ensure each file of the extension package satisfies linting rules and disable some rules where necessary

* fix: update relative imports to absolute imports throughout extension code with the defined tilde and at symbols

* fix: import the updated ui module from the front package to the chrome extension package to prevent eslint rules from breaking subject to the recent merged changes into main

* fix: commit the case change for files that were missed by Git in the earlier commits due to default configuration
2024-02-25 17:32:08 +01:00
gitstart-app[bot]
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
Charles Bochet
a108d36040
Refactor sign-up into its own service (#4173)
* Refactor sign-up into its own service

* Fix tests
2024-02-25 11:51:17 +01:00
Aditya Pimpalkar
b67957bf94
feat: user can have multiple workspaces (backend) (#4036)
* create user-workspace mapping

* user-workspace service and integration

* invite condition on sign-up/sign-in

* save/update defaultWorkspace on signup

* add unique decorator on user-workspace entity

* remove resolver permissions

* Fixes

* Fixes

* Fix tests

* Fixes

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-25 10:58:14 +01:00
rostaklein
52b33b5450
feat: validate webhook URL (#4144)
* feat: validate webhook URL

* fix: use existing util method

* Add return statement

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-25 09:33:38 +01:00
Kanav Arora
a9b0f88521
MQ Facepaint introduced (#4169)
* MQ Facepaint introduced

* Remove useDeviceType

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2024-02-24 21:38:27 +01:00
rostaklein
1b04dfe3c6
feat: find duplicate objects init (#4038)
* feat: find duplicate objects backend init

* refactor: move duplicate criteria to constants

* fix: correct constant usage after type change

* feat: skip query generation in case its not necessary

* feat: filter out existing duplicate

* feat: FE queries and hooks

* feat: show duplicates on FE

* refactor: should-skip-query moved to workspace utils

* refactor: naming improvements

* refactor: current record typings/parsing improvements

* refactor: throw error if existing record not found

* fix: domain -> domainName duplicate criteria

* refactor: fieldNames -> columnNames

* docs: add explanation to duplicate criteria collection

* feat: add person linkedinLinkUrl as duplicate criteria

* feat: throw early when bot id and data are empty

* refactor: trying to improve readability of filter criteria query

* refactor: naming improvements

* refactor: remove shouldSkipQuery

* feat: resolve empty array in case of empty filter

* feat: hide whole section in case of no duplicates

* feat: FE display list the same way as relations

* test: basic unit test coverage

* Refactor Record detail section front

* Use Create as input argument of findDuplicates

* Improve coverage

* Fix

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 19:12:21 +01:00
martmull
05c206073d
38 add billing webhook endpoint (#4158)
* Add self billing feature flag

* Add two core tables for billing

* Remove useless imports

* Remove graphql decorators

* Rename subscriptionProduct table

* WIP: Add stripe config

* Add controller to get product prices

* Add billing service

* Remove unecessary package

* Simplify stripe service

* Code review returns

* Use nestjs param

* Rename subscription to basePlan

* Rename env variable

* Add checkout endpoint

* Remove resolver

* Merge controllers

* Fix security issue

* Handle missing url error

* Add workspaceId in checkout metadata

* Add BILLING_STRIPE_WEBHOOK_SECRET env variable

* WIP: add webhook endpoint

* Fix body parser

* Create Billing Subscription on payment success

* Set subscriptionStatus active on webhook

* Add useful log

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 17:30:32 +01:00
martmull
c96e210ef1
47 add stripe checkout endpoint (#4147)
* Add self billing feature flag

* Add two core tables for billing

* Remove useless imports

* Remove graphql decorators

* Rename subscriptionProduct table

* WIP: Add stripe config

* Add controller to get product prices

* Add billing service

* Remove unecessary package

* Simplify stripe service

* Code review returns

* Use nestjs param

* Rename subscription to basePlan

* Rename env variable

* Add checkout endpoint

* Remove resolver

* Merge controllers

* Fix security issue

* Handle missing url error

* Add workspaceId in checkout metadata
2024-02-24 17:19:51 +01:00
gitstart-app[bot]
c434d1edb5
TWNTY-3968 - Fix and enhance storybook:pages tests (#4072)
* Fix and enhance storybook:pages tests

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

* Fix and enhance storybook:pages tests

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

* Add minor refactors

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

* Revert temporary changes

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

* Fix tests

* Fix tests duplicated locale

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 15:06:51 +01:00
Thaïs
3d809d5317
feat: add Display calendar settings (#4164)
* feat: add Color calendar setting

Closes #4067

* fix: fix wrong imports

* feat: add Display calendar settings

Closes #4068

* feat: add 12h/24h in Format option labels

* fix tests

* Fix

* Fix

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 12:50:32 +01:00
Thaïs
a993155fb0
feat: add Color calendar setting (#4141)
* feat: add Color calendar setting

Closes #4067

* fix: fix wrong imports

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 12:34:56 +01:00
Mohamed Houssein Douici
0fe838d320
fix: forbid creation of objects or fields with certain characters or with forbidden keywords that clashes with pg_graphql (#3957)
* fix: forbid creation of objects or fields with certain characters or with forbidden keywords that clashes with pg_graphql

* refactor: add a decorator for name validation and use it on fields
2024-02-24 12:32:01 +01:00
Thomas Trompette
b1eb0577bc
Build cron for data seed demo (#4142)
* Migrate command to cron

* Put back command using job as well

* Build service and module + move into folder

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-24 12:30:12 +01:00
brendanlaschke
a2eca16646
Website: markdown to release (#4146)
* website: markdown to release

* remove Image.png

* fixed font weight

* Change folder structure

* remove react-markdown

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2024-02-24 12:29:37 +01:00
Charles Bochet
87f7c75057
Remove usage of toSorted as it is not fully supported (#4168) 2024-02-24 12:12:55 +01:00
Aayush-23
400ac447d8
Fixed DeveloperSettings stories (#4166)
* Fixed Developer Settings page Storybook.

* Remove unused stories

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-24 11:49:43 +01:00
Lucas Bordeau
fb920a92e7
Improved activity editor re-renders (#4149)
* Refactor task count

* Fixed show page rerender

* Less rerenders and way better title and body UX

* Finished breaking down activity editor subscriptions

* Removed console.log

* Last console.log

* Fixed bugs and cleaned
2024-02-23 17:54:27 +01:00
Félix Malfait
5de1c2c31d
New folder structure for website (#4159)
New folder structure
2024-02-23 17:42:13 +01:00
bosiraphael
06c4665a44
4150 i should be able to view my emails even if ive set my account visibility to metadata (#4156)
* improve timeline messaging to allow users to view the threads to which they participated

* working

* improvement

* improvements

* improvements

* fix

* remove unnecessary type
2024-02-23 17:07:49 +01:00
Kanav Arora
4b22c0404e
WIP: New User Guide (#3984)
* initial commit

* Theme setup on twenty-website package

* Left bar, Content done

* Content added, useDeviceType hook added

* useDeviceType file renamed

* Responsiveness introduced

* Mobile responsiveness fix

* TOC layout

* PR fixes

* PR changes 2

* PR changes #3
2024-02-23 16:39:48 +01:00
bosiraphael
35a2178cde
4020 timebox improve performances on messages read (#4140)
* adding console.time to monitor queries time

* improve query by removing unnecessary JOIN

* improve queries by removing unnecessary JOINs

* improve queries by removing unnecessary JOINs

* remove console.time

* remove logs

* use groupBy from lodash

* modify SELECT

* Revert "use groupBy from lodash"

This reverts commit 852fd3c193.

* use WorkspaceDataSourceModule
2024-02-23 10:18:16 +01:00
Thomas Trompette
67e27a69ff
Handle relations between same objects (#4137)
* Handle relations between same objects

* Simplify conditions

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-23 09:51:42 +01:00
martmull
679456e819
46 add stripe product endpoint (#4133)
* Add self billing feature flag

* Add two core tables for billing

* Remove useless imports

* Remove graphql decorators

* Rename subscriptionProduct table

* WIP: Add stripe config

* Add controller to get product prices

* Add billing service

* Remove unecessary package

* Simplify stripe service

* Code review returns

* Use nestjs param

* Rename subscription to basePlan

* Rename env variable
2024-02-22 20:11:26 +01:00
Thaïs
ce7be4c48e
feat: add Event Visibility calendar settings (#4138)
Closes #4064
2024-02-22 14:20:56 -03:00
Thaïs
292e97a045
feat: add Contact Auto-Creation calendar settings (#4132)
* feat: add Contact Auto-Creation calendar settings

Closes #4065

* fix: fix wrong Section component import

* fix: fix wrong Toggle import
2024-02-22 18:18:05 +01:00
Weiko
d5e8844521
Fix referential_constraints health check (#4139) 2024-02-22 16:33:19 +01:00
Weiko
70511dc860
Add writeLog for relation update sync metadata (#4136)
* Add writeLog for relation update sync metadata

* fix health check
2024-02-22 16:02:13 +01:00
bosiraphael
4e798ba2a3
3933 filter non work email from auto contact creation (#4131)
* use isWorkEmail

* working

* improvement

* Refactor lodash import in create-companies-and-contacts.service.ts

* refactor lodash import
2024-02-22 15:25:14 +01:00
Charles Bochet
fa02a478a5 Fix server import case 2024-02-22 11:51:18 +01:00
Thaïs
5a692fbaeb
feat: add Accounts List Card to Calendar Settings (#4129)
Closes #4061
2024-02-22 11:22:49 +01:00
Weiko
8425ce4987
Add onDeleteAction to RelationMetadata (#4100)
* Add onDeleteAction to relationMetadata

* rename to SET NULL

* fix migration

* fix migration

* fix after review
2024-02-22 10:27:15 +01:00
Jérémy M
e69c462b70
feat: allow backend to rename field of custom object (#4097)
* feat: allow backend to rename field of custom object

* feat: allow custom field label edition in Settings

Closes #4080

* fix: avoid renaming standard fields

---------

Co-authored-by: Thaïs Guigon <guigon.thais@gmail.com>
2024-02-21 18:59:51 +01:00
Lucas Bordeau
140d3460eb
Refactor/finish activities optimistic (#4106)
* Finished optimistic effects

* Fixed tests

* Added unit test on useActivityConnectionUtils to prepare for refactor

* Fixed console.log
2024-02-21 18:54:14 +01:00
Anoop P
02e9846282
Add confirmation modal when deleting/ regenerating api keys, deleting webhook (#4035)
* fix: confirmation modal style

* add confirmation modal when delete/ regenerating an api key

* add confirmation modal when deleting webhook

* fix: remove line break

* Update packages/twenty-front/src/pages/settings/developers/api-keys/SettingsDevelopersApiKeyDetail.tsx

* Update packages/twenty-front/src/pages/settings/developers/api-keys/SettingsDevelopersApiKeyDetail.tsx

* Update packages/twenty-front/src/pages/settings/developers/webhooks/SettingsDevelopersWebhookDetail.tsx

* Update packages/twenty-front/src/pages/settings/developers/webhooks/SettingsDevelopersWebhookDetail.tsx

* Update packages/twenty-front/src/pages/settings/developers/api-keys/SettingsDevelopersApiKeyDetail.tsx

* Update packages/twenty-front/src/pages/settings/developers/api-keys/SettingsDevelopersApiKeyDetail.tsx

---------

Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com>
2024-02-21 18:39:37 +01:00
martmull
d4fac2ea70
45 create billing core tables (#4096)
* Add self billing feature flag

* Add two core tables for billing

* Remove useless imports

* Remove graphql decorators

* Rename subscriptionProduct table
2024-02-21 18:17:09 +01:00
brendanlaschke
f407c70356
Fix number csv import (#4114)
fix number csv import
2024-02-21 17:35:17 +01:00
Jeet Desai
1c829b2ea1
Updated tasks inbox empty state wording (#4121)
#4078 change task empty text word
2024-02-21 17:34:26 +01:00
Thaïs
ee66188656
feat: add Synchronization calendar settings (#4111)
* feat: add Calendar Settings section to Settings/Accounts/Calendars page

Closes #4060

* refactor: rename components

* feat: add Synchronization calendar settings

Closes #4066
2024-02-21 17:23:06 +01:00
Thaïs
5a8a9cd029
feat: add Calendar Settings section to Settings/Accounts/Calendars page (#4104)
* feat: add Calendar Settings section to Settings/Accounts/Calendars page

Closes #4060

* refactor: rename components
2024-02-21 17:18:57 +01:00
Jeet Desai
15510c9fbe
Added beta tag in email (#4098)
#4040 added beta tag
2024-02-21 17:09:36 +01:00
Thomas Trompette
161d02620a
Fix developers url and remove webhook url error (#4120)
Fix developers url + remove webhook url error

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-21 16:25:35 +01:00
Thaïs
f977164fee
feat: create Settings/Accounts/Calendars/Calendar Settings page (#4092)
* feat: create Settings/Accounts/Calendars/Calendar Settings page

Closes #4063

* docs: add SettingsAccountsCalendarsSettings stories
2024-02-21 15:37:42 +01:00
Jérémy M
e3e940327e
fix: workspace health undefined relation (#4107) 2024-02-21 15:36:18 +01:00
bosiraphael
ee7c1fbf5c
4008 dont create a contact company if it matches the persons domain (#4088)
* Add SettingsAccountsEmailsBlocklistInput story

* prevent contact creation from the same company

* add todo

* improvements

* Delete packages/twenty-front/src/modules/settings/accounts/components/__stories__/SettingsAccountsEmailsBlocklistInput.stories.tsx

* refactor

* modify after review

* improve code

* create utils

* fix

* Fix getAllByWorkspaceId to throw NotFoundException when no workspace member found

* fix after merge

* use map

* modify after review
2024-02-21 13:22:01 +01:00
Thaïs
11581ca9c3
feat: create Settings/Accounts/Calendars page (#4090)
* feat: create Settings/Accounts/Calendars page

Closes #4059

* docs: add SettingsAccountsCalendars stories

* refactor: add SettingsNavigationDrawerItem component
2024-02-20 19:28:15 +01:00
Charles Bochet
4552e98b7f Fix workspace enum migration bug 2024-02-20 18:48:10 +01:00
Jérémy M
3914e8d77c
fix: sync and health (#4095)
* fix: throw error if we try to create a migration without columnName

* fix: typeorm save for update breaking everything
2024-02-20 17:55:23 +01:00
Weiko
8c46e66cf5
Fix delete with no result should not throw (#4091)
* Fix delete with no result should not throw

* add logs

* Delete packages/twenty-server/src/database/typeorm/metadata/migrations/1708442904165-addOnDeleteActionToRelationMetadata.ts
2024-02-20 17:27:31 +01:00
Jérémy M
22e8a3ba77
fix: unwanted comment on graphQL input (#4071) 2024-02-20 16:13:18 +01:00
Jeet Desai
70cf805db8
Resolved text editor styled (#4033)
#3998 resolved text editor styled

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-20 15:29:39 +01:00
Aditya Pimpalkar
9d9ba97fb7
feat: REST endpoints for metadata API (#3912)
* parse metadata path

* metadata rest api

* add queryAction condition and return object singular/plural

* handle GET endpoint for metadata

* FindOne and FindMany query for metadata endpoint

* Request all objects and nest fields in object request

---------

Co-authored-by: martmull <martmull@hotmail.fr>
2024-02-20 15:17:41 +01:00
Thaïs
ec20117e80
chore: make twenty-server nest command scripts depend on twenty-email… (#4055)
chore: make twenty-server nest command scripts depend on twenty-emails build

Closes #4013
2024-02-20 14:35:09 +01:00
Zoltán Völcsey
82e9f28383
fix: Fixed LinkedIn links with unicode (#3953)
* fix: Fixed LinkedIn links with unicode

* feat: Added checkUrlType and getDisplayValueByUrlType util functions
2024-02-20 14:22:26 +01:00
Lucas Bordeau
36a6558289
Feat/activity optimistic activities (#4009)
* Fix naming

* Fixed cache.evict bug for relation target deletion

* Fixed cascade delete activity targets

* Working version

* Fix

* fix

* WIP

* Fixed optimistic effect target inline cell

* Removed openCreateActivityDrawer v1

* Ok for timeline

* Removed console.log

* Fix update record optimistic effect

* Refactored activity queries into useActivities for everything

* Fixed bugs

* Cleaned

* Fix lint

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-20 14:20:45 +01:00
Kanav Arora
6fb0099eb3
3969 Adjusted Sidebar (#3971)
* Label fix

* changes done

* Revert "Label fix"

This reverts commit 1233b58099.

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2024-02-19 23:01:17 +01:00
Jonathanlemon
116254243d
[Enter] key autosave for new API key and webhook (#3955)
* Added functionality for onKeyDown for new webhook and new API key, to save when the user presses the [Enter] key

* Update SettingsDevelopersApiKeysNew.tsx

Fix for linter

* Update SettingsDevelopersWebhooksNew.tsx

Fix for linter

* Update SettingsDevelopersApiKeysNew.tsx

Got rid of extra space in if statement

* Update SettingsDevelopersWebhooksNew.tsx

Got rid of extra space for if statement

* Update SettingsDevelopersApiKeysNew.tsx

prettier

* Update SettingsDevelopersWebhooksNew.tsx

prettier

* Fix linter

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2024-02-19 22:37:02 +01:00
bosiraphael
09783912f3
4008 dont create a contact company if it matches the persons domain (#4057)
* Add SettingsAccountsEmailsBlocklistInput story

* prevent contact creation from the same company

* add todo

* improvements

* Delete packages/twenty-front/src/modules/settings/accounts/components/__stories__/SettingsAccountsEmailsBlocklistInput.stories.tsx

* refactor

* modify after review

* improve code
2024-02-19 18:46:49 +01:00
bosiraphael
e34e341ddc
3938 change email auto import to contact ive sent email to (#3995)
* done

* working

* wip

* merge main

* almost done

* improvement
2024-02-19 17:29:38 +01:00
Jérémy M
2f9e503a8b
fix: ignore enum options sync for now (#4056) 2024-02-19 17:29:30 +01:00
Jérémy M
e293abe332
Fix/workspace health type (#4053)
* fix: memory issue with truncate command

* fix: LINK doesn't have any default value

* fix: Cannot convert LINK to column type.

* fix: handle old column type and add a warn to fix them manually
2024-02-19 17:28:40 +01:00
Thomas des Francs
4a95798411
Update of the readme with updated visuals (#4041)
* README udpated illustrations & taglines

* Delete packages/twenty-docs/static/img/create-tasks-dark.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/create-tasks-light.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/follow-your-deals-dark.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/follow-your-deals-light.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/rich-notes-dark.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/rich-notes-light.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/shortcut-navigation-dark.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/shortcut-navigation-light.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/visualise-customer-dark.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/visualise-customer-light.png

Deleting depreciated illustration

* Delete packages/twenty-docs/static/img/logo-square-light.svg

Logo not part of the visual identity

* Updated a typo
2024-02-19 11:40:26 +01:00
Thomas des Francs
9d2e0e9753
Corrected a typo in the visuals ("TEXT TEXT") (#4047) 2024-02-19 11:13:01 +01:00
Charles Bochet
ba050cd33d
Release 0.3.1 (#4031) 2024-02-16 20:11:38 +01:00
martmull
1b983b005d
Fix storybook (#4028) 2024-02-16 18:06:19 +01:00
brendanlaschke
dfcf3b4dfa
Small fix website: contributors (#4027)
add link on pr, fix github name first letter missing
2024-02-16 17:58:36 +01:00
martmull
f2ff3e7ab7
Fix onboarding status (#4019)
* Fix onboarding status

* Add comment

* Fix jest tests
2024-02-16 16:58:49 +01:00
martmull
0ee512a983
3959 create a activationstatus in coreworkspace and use it in front to redirect properly (#3989)
* Add computed field to workspace entity

* Add activationStatus to front requests

* Update Selector

* Use activation status

* Stop using selector for mock values

* Remove isCurrentWorkspaceActiveSelector

* Use activation status

* Fix typo

* Use activation status

* Create hook for sign in up navigate

* Update hook to handle profile creation

* Use varaible

* Use more readable boolean function
2024-02-16 16:00:39 +01:00
Pranav
03a1d3aa75
Updated the docs typo (#3987) 2024-02-16 15:11:49 +01:00
Charles Bochet
6f2b0f2068
Resolve bugs tied to record creations on table (#4011)
* Resolve bugs tied to record creations on table

* Fix according to PR

* Fix tests
2024-02-16 15:03:57 +01:00
brendanlaschke
595b2f9e6f
Webhook Docs (#3966)
* add webhook docs, openapi v3.1, stoplight v8

* *.*
2024-02-16 15:01:37 +01:00
brendanlaschke
547145389c
Docs include field description (#3973)
- include field description
2024-02-16 14:38:39 +01:00
Thomas des Francs
b90b3e762e
Uploading img assets in view of read-me visual update (#4000)
* Uploading some new visuals

* Delete packages/twenty-docs/static/img/preview-light.png

* Rename Github cover light.png to preview-light.png

* replace index light file test

* Uploaded illustration updated versions

* Adding data model illustrations

* Updated font case for data model illustrations

* Rename Emails-dark.png to emails-dark.png

* Rename Emails-light.png to emails-light.png

* Rename Index-dark.png to index-dark.png

* Rename Index-light.png to index-light.png

* Rename Kanban-dark.png to kanban-dark.png

* Rename Kanban-light.png to kanban-light.png

* Rename Keyboard-dark.png to keyboard-dark.png

* Rename Notes-dark.png to notes-dark.png

* Rename Notes-light.png to notes-light.png

* Rename Tasks-dark.png to tasks-dark.png

* Rename Tasks-light.png to tasks-light.png

* Rename Keyboard-light.png to keyboard-light.png

* Added some API settings illus - final update
2024-02-16 14:35:35 +01:00
martmull
a06b6c9078
3757 update frontend to show correct view count (#3967)
* Add totalCount to fetch record request

* Add totalCount to object board

* WIP Add totalCount to object table

* Update query total count on update / delete optimistic effects

* Remove console log

* Load fewer data for totalcount

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-16 14:33:51 +01:00
Charles Bochet
a5ecbf7df5
Integrations: design fixes and remove feature flag (#4003)
* Integrations: design fixes and remove feature flag

* Fix
2024-02-16 13:35:45 +01:00
Weiko
8e3723b88e
Fix update on delete record (#3996) 2024-02-16 13:08:24 +01:00
Jérémy M
44ac16c82e
fix: impact too many records (#3993)
* fix: impact too many records

* fix: change env name

* fix: remove env name from error
2024-02-16 11:17:37 +01:00
Jérémy M
c2c14d79a9
fix: workspace cache version (#3999) 2024-02-16 11:06:51 +01:00
Jérémy M
f47159d84d
fix: invalidate cache when no record inside workspace cache version (#3994)
* fix: invalidate cache when no record inside workspace cache version

* fix: use getVersion
2024-02-16 10:37:25 +01:00
Jérémy M
34d02cf4ed
feat: add default value for some type of fields (#3991)
feat: add default value for some kind of fields
2024-02-16 10:34:42 +01:00
rostaklein
d85209cf4a
feat: filter people in CommandMenu via last name, email and phone (#3997) 2024-02-16 09:55:50 +01:00
Kanav Arora
ece4dc95bd
3970-label fix (#3974)
label fix
2024-02-16 09:45:37 +01:00
Jérémy M
990cb107a1
feat: workspace health target column map fix (#3932)
* feat: workspace health fix target column map

* fix: remove log

* feat: refactor health fixer

* fix: default-value issue and health check not working with composite

* fix: enhance target column map fix

* feat: create workspace migrations for target-column-map issues

* feat: enhance workspace-health issue detection
2024-02-15 18:04:12 +01:00
bosiraphael
0b93a6785b
3815 blocklist connect frontend (#3930)
* wip

* wip

* move blocklist to connectedAccount

* wip

* format date

* fix styling

* renaming

* fix imports

* fix imports

* Rename BlockListItem.ts to BlocklistItem.ts

* Add IS_BLOCKLIST_ENABLED feature flag and remove IS_MESSAGING_ENABLED gate at model creation

* hide blocklist if feature flag is disabled
2024-02-15 17:18:04 +01:00
Weiko
4b3eeac333
[messaging] add defaultValue to isContactAutoCreationEnabled (#3992) 2024-02-15 16:42:03 +01:00
martmull
8636be5e4b
3129 show page relation field add delete menu item (#3975)
* Fix typing error

* Add delete relation button

* Disable delete for workspace members

* Fix lint
2024-02-15 11:31:21 +01:00
Charles Bochet
88990144cf
Fix website build (#3986)
* Fix website build

* Try fix

* Try fix
2024-02-15 11:03:29 +01:00
Charles Bochet
9777c5fbce
Fix website build (#3983) 2024-02-14 21:28:26 +01:00
Weiko
62058dd0e9
[worker] add more logs to queue-worker (#3982) 2024-02-14 21:28:17 +01:00
Weiko
49cc01d7d8
[messaging] fix add messageParticipant not in a transaction (#3981) 2024-02-14 19:28:25 +01:00
Weiko
2055f64acd
fix CreateCompaniesAndContactsAfterSyncJobData import (#3979) 2024-02-14 18:58:49 +01:00
Charles Bochet
4613f64910
Add proper ORM and postgres support (#3978)
* Add postgresql support

* Fixes

* Fix perfs
2024-02-14 17:53:50 +01:00
bosiraphael
94ad0e33ec
3889 activate settingsaccountsemailsinboxsettings (#3962)
* update email visibility in settings

* improve styling

* Add contact auto creation toggle to inbox settings

* re
move soonpill

* update Icon

* create job

* Add logic to create contacts and companies for message participants without personId and workspaceMemberId

* add listener

* wip

* wip

* refactoring

* improve structure

* Add isContactAutoCreationEnabled method to MessageChannelService

* wip

* wip

* clean

* add job

* fix bug

* contact creation is working

* wip

* working

* improve code

* improve typing

* resolve conflicts

* fix

* create company repository

* move util

* wip

* fix
2024-02-14 17:30:17 +01:00
Weiko
0b2ffb0ee6
add rimraf to server dependencies (#3977) 2024-02-14 16:56:37 +01:00
bosiraphael
7d80610428
3814 create blocklist data model (#3927)
* wip

* wip

* wip

* working
2024-02-14 16:38:16 +01:00
Jeet Desai
47d7e19570
Update custom object placeholder (#3876)
* #3874 update custom object placeholder

* #3876 removed object-edit folder and file

* #3833 update loading image

* remove image file
2024-02-13 23:24:21 +01:00
Mohamed Houssein Douici
504c23c3b4
docs: add a section for troubleshooting the local setup (#3948) 2024-02-13 23:19:19 +01:00
Jeet Desai
2a45aa9e0d
Update loading image (#3929)
#3833 update loading image
2024-02-13 23:18:42 +01:00
Kanav Arora
7b88e5bdaf
3865-Add-Integrations (#3870)
* initial commit setup

* ui done

* added links

* changed brand logos

* Twenty logo fix

* Windmill logo fix

* Fix typo

* Add feature flag

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-13 23:11:05 +01:00
martmull
15a5fec545
Zapier add description to labels (#3787)
* Use object metadata graphql api to fetch input fields

* Clean code

* Clean code

* Remove targetColumnMap

* Remove duplicated testing

* Fix labels
2024-02-13 22:22:47 +01:00
Thaïs
e011ecbd6f
POC: generate twenty-server package.json with Nx (#3654)
* POC: generate twenty-server package.json with Nx

* Re-add passport

* Fix instal

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-13 22:16:21 +01:00
Muralidhar
0d41023edd
Activity Editor hot key scope management (#3568)
* on click focus on activity body editor

* acitivity editor hot key scope added

* classname prop added escape hot key scope call back added

* passing containerClassName prop for activity editor

* hot key scope added

* console log cleanup

* activity target escape hot key listener added

* tasks filter hot key scope refactor

* scope renaming refactor

* imports order linting refactor

* imports order linting refactor

* acitivity editor field focus state and body editor text listener added

* logic refactor removed state for activity editor fields focus

* removed conflicting click handler of inline cell creating new scope

* linting and formatting

* acitivity editor field focus state and body editor text listener added

* adding text at the end of line

* fix duplicate imports

* styling: gap fix activity editor

* format fix

* Added comments

* Fixes

* Remove useListenClickOutside, state, onFocus and onBlur

* Keep simplifying

* Complete review

* Fix lint

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-13 21:38:53 +01:00
Weiko
1afe8aecd0
Fix missing feature flag on messaging listeners (#3952)
* Fix missing feature flag on messaging listeners

* Update workspace-query-runner.service.ts
2024-02-13 20:23:09 +01:00
Jérémy M
8ce7020b12
feat: sync metadata can alter and update a field (#3944) 2024-02-13 19:36:58 +01:00
Weiko
87fafae9be
[messaging] Removing TO requirement for email import (#3949) 2024-02-13 19:19:57 +01:00
Weiko
458e8c839f
Add workspacePreQueryHook module (#3879)
* rebase

* reorganise messaging folders

* fix

* fix after review

* fix yarn lock
2024-02-13 18:23:29 +01:00
Weiko
36b69a8625
[messaging] Fix messaging import with no person skipped email (#3941) 2024-02-13 16:55:06 +01:00
Weiko
7f122a4671
[messaging] Remove ids from enqueued jobs (#3936)
* [messaging] Fix import message participant uppercase

* fix job not enqueuing
2024-02-13 16:13:34 +01:00
Weiko
b6a86ebf96
[messaging] Fix import message participant uppercase (#3934) 2024-02-13 16:03:44 +01:00
Brody Over
52bb33b566
Disable buffered logs (#3892)
* Update main.ts

* Update command.ts

* Update queue-worker.ts

* Enable users to disable log buffering

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-13 14:50:25 +01:00
bosiraphael
ec48e66eeb
3921 delete messagethreads after deleting connectedaccount (#3925)
* created listener

* working

---------

Co-authored-by: Weiko <corentin@twenty.com>
2024-02-13 14:36:55 +01:00
bosiraphael
1d1976ef22
3807 auto creation of contact when importing emails (#3888)
* Add CreateContactService to messaging services

* Add logic to create a contact if it doesn't exist

* Add name

* Improvements

* contact creation working

* fix bug

* Add IsPersonEmailService to check if an email is personal or not

* filter is working

* improve filter

* create companies and people

* Refactor createContactFromHandleAndDisplayName to createContactAndCompanyFromHandleAndDisplayName

* improve regex

* reorganizing services

* updates

* reorganize folders

* wip

* use transaction

* wip

* wip

* wip

* batch queries

* almost working

* working
2024-02-13 14:24:28 +01:00
Jeet Desai
b286232ea7
Added the dark mode version of empty states (#3906)
* #3898 added empty states in dark mode version

* resolved eslint issue
2024-02-13 12:31:26 +01:00
martmull
d016e5ff03
BUG FIX: Create workspace member if inviteHash exists (#3917)
Create workspace member if inviteHash exists
2024-02-12 17:43:26 +01:00
Jérémy M
35fce6a6b4
feat: health check enum (#3913)
* feat: health check enum

* fix: cleaner if condition
2024-02-12 17:32:05 +01:00
Jérémy M
b0b033aec9
fix: workspace health (#3916)
* fix: workspace health applying migrations multiple times

* fix: remove log

* fix: use logger
2024-02-12 16:17:17 +01:00
Weiko
c13e55a753
Fix bull-mq retry option and exceptions not being captured for jobs (#3905)
* Fix bull-mq retry option

* fix exception inside worker

* add logs

* fix after review
2024-02-12 15:12:52 +01:00
Abdullah
1265dc74d0
Closes #2413 - Building a chrome extension for twenty to store person/company data into a workspace. (#3430)
* build: create a new vite project for chrome extension

* feat: configure theme per the frontend codebase for chrome extension

* feat: inject the add to twenty button into linkedin profile page

* feat: create the api key form ui and render it on the options page

* feat: inject the add to twenty button into linkedin company page

* feat: scrape required data from both the user profile and the company profile

* refactor: move modules into options because it is the only page using react for now

* fix: show add to twenty button without having to reload the single page application

* fix: extract domain of the business website instead of scrapping the industry type

* feat: store api key to local storage and open options page when trying to store data without setting a key

* feat: send data to the backend upon click and store it to the database

* fix: open options page upon clicking the extension icon

* fix: update terminology from user to person to match the codebase convention

* fix: adopt chrome extension to monorepo approach using nx and get the development server working

* fix: update vite config for build command to work per the requirement

* feat: add instructions in the readme file to install the extension for local testing

* fix: move server base url to a dotenv file and replace the hard-coded url

* feat: permit user to configure a custom route for the server from the options page

* fix: fetch api key and route from local storage and display on options page to inform users of their choices

* fix: move front base url to dotenv and replace the hard-coded url

* fix: remove the trailing slash from person and company linkedin username

* fix: improve code commenting to explain implementation somewhat better

* ci: introduce a workflow to build chrome extension to ensure it can be published

* fix: format files to display code in a consistent manner per the prettier configuration in codebase

* fix: improve the commenting significantly to explain important and hard-to-understand parts of the code

* fix: remove unused permissions from the manifest file for publishing to the chrome web store

* Add nx

* Fix vale

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-12 12:30:23 +01:00
Charles Bochet
a15128df36 Remove virtual fieldType Relation from fieldMetadata sync 2024-02-11 10:23:37 +01:00
Thaïs
d28843bb85
feat: order board cards by record position (#3902)
* feat: order board cards by record position

Closes #3848

* Fix tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-09 18:09:13 +01:00
Jeet Desai
713ec9494d
Added create an activity from open activity (#3903)
#3895 added create an activity from open activity

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-02-09 18:06:44 +01:00
Deepak Kumar
3cbf958a1c
GH-3652 Add forgot password on sign-in page (#3789)
* Remove auth guard from password reset email endpoint

* Add arg for GQL mutation and update its usage

* Add forgot password button on sign-in page

* Generate automated graphql queries

* Move utils to dedicated hook

* Remove useless hook function

* Split simple hook methods

* Split workspace hook

* Split signInWithGoogle hook

* Split useSignInUpForm

* Fix error in logs

* Add Link Button UI Component

* Add storybook doc

---------

Co-authored-by: martmull <martmull@hotmail.fr>
2024-02-09 17:37:44 +01:00
bosiraphael
917fc5bd4d
3811 add accounts loader (#3829)
* rename exports

* rename exports

* fix css

* done

* updating image
2024-02-09 15:29:11 +01:00
bosiraphael
11d1c4c161
3808 auto creation of company when importing emails (#3881)
* create service

* wip

* use raw queries

* creating companies is working

* Fix participant handle domain name extraction

* Add HTTP service to fetch company info from domain name

* Handle 404

* Fix missing parameter in INSERT query

* wip

* renaming

* Add typing
2024-02-09 15:28:35 +01:00
bosiraphael
a8cb4dc2f4
Press enter to add to blocklist (#3847)
* Press enter to add to blocklist

* Add support for using ts-key-enum in SettingsAccountsEmailsBlocklistInput

* Sort imports
2024-02-09 15:26:18 +01:00
brendanlaschke
59721134dc
Update trouble shooting section (#3868)
update trouble shooting section
2024-02-09 15:16:53 +01:00
Charles Bochet
66adbb1783 Enfoce high jest code coverage 2024-02-09 15:14:43 +01:00
Lucas Bordeau
cca72da708
Activity cache injection (#3791)
* WIP

* Minor fixes

* Added TODO

* Fix post merge

* Fix

* Fixed warnings

* Fixed comments

* Fixed comments

* Fixed naming

* Removed comment

* WIP

* WIP 2

* Finished working version

* Fixes

* Fixed typing

* Fixes

* Fixes

* Fixes

* Naming fixes

* WIP

* Fix import

* WIP

* Working version on title

* Fixed create record id overwrite

* Removed unecessary callback

* Masterpiece

* Fixed delete on click outside drawer or delete

* Cleaned

* Cleaned

* Cleaned

* Minor fixes

* Fixes

* Fixed naming

* WIP

* Fix

* Fixed create from target inline cell

* Removed console.log

* Fixed delete activity optimistic effect

* Fixed no title

* Fixed debounce and title body creation

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-09 14:51:30 +01:00
Thomas Trompette
9ceff84bbf
Set opportunity stage as editable (#3838)
* Set opportunity stage as editable

* Fix comments

* Add command for migration

* Fixes

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-09 14:44:11 +01:00
Charles Bochet
0185c2a36e
Fix logger behavior (#3897) 2024-02-09 14:43:36 +01:00
Jérémy M
2560ce25e0
feat: workspace health default-value fix (#3894)
* feat: workspace health default-value fix

* fix: rename function regarding review
2024-02-09 14:16:11 +01:00
Thaïs
201a2c8acc
feat: display record identifier field as first column in table (#3788)
* feat: display record identifier field as first column in table

& forbid hiding and moving record identifier column

Closes #3303

* refactor: add availableTableColumnKeysSelectorScopeMap

* feat: show plus icon button for label identifier column and dropdown menu for other columns

* fix: use label identifier field value in RecordShowPage title

* refactor: remove availableColumnKeys selector

* refactor: review - compute label identifier logic in mapViewFieldsToColumnDefinitions + remove selectors

* fix: several fixes

* fix: fix board fields isVisible

* fix: fix board fields reordering

* fix: more board fields fixes

* fix: fix hiddenTableColumnsSelectorScopeMap
2024-02-09 12:36:08 +01:00
martmull
9299ad1432
Fix delete incomplete workspaces (#3893)
* Fix delete incomplete workspaces

* Add multiple workspace filtering option
2024-02-09 12:26:10 +01:00
martmull
7425223f83
3628 timebox separate user creation from workspace creation (#3737)
* Remove workspace schema creation from signUp

* Set user workspaceMember nullable

* Remove workspace creation

* Handle null workspace in tokens

* Update onboarding status

* Generate types

* Move createWorkspace to workspace resolver

* Create workspace after signup

* Update createWorkspace return type

* Update createWorkspace return type

* Create core.workspace at signup

* WIP

* Fix create workspace

* Fix create workspace

* Clean code

* Remove useless recoil set

* Simplify create workspace request

* Set currentWorkspace at login

* Fix tests

* Create a recoil value for is workspaceSchema created

* Rename createWorkspace to createWorkspaceSchema

* Code review returns

* Use AppPath when possible

* Try without state

* Fix

* Fixes

* Rename createWorkspaceSchema to activateWorkspace

* Remove defaultAvatarUrl from user

* Add defaultAvatarUrl to core user

This reverts commit 1701c30eb1.

* Add defaultAvatarUrl to core user

This reverts commit 1701c30eb1.

* Fix ci

* Fix tests

* Fix storybook

* Fix test

* Remove useless query

* Fix test

* Fix test

* Fix mock data

* Fix test

* Clean Mock Requests

* Fix tentative

* Revert "Clean Mock Requests"

This reverts commit 8aa20a3436.

* Fix

* Revert "Fix"

This reverts commit 2df7e9b656.

* Revert "Revert "Clean Mock Requests""

This reverts commit 3aefef8e96.

* Revert "Fix tentative"

This reverts commit 13e7748d6f.

* Update filename

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-09 12:06:11 +01:00
Charles Bochet
3fc18aeec1 Fix twenty-server build 2024-02-09 11:18:58 +01:00
Charles Bochet
3d7b5902e6 Fix twenty-server build 2024-02-09 11:14:02 +01:00
Jérémy M
7ec968d5a2
feat: workspace health type fix (#3890)
* feat: workspace health type fix

* Fix

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-08 18:59:17 +01:00
Thaïs
90b58518bb
feat: change RecordShowPage Relation Card field display for TO_ONE_OB… (#3596)
feat: change RecordShowPage Relation Card field display for TO_ONE_OBJECT relation fields

Closes #3409

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-08 18:46:35 +01:00
Jérémy M
d3fe1b9e31
feat: workspace:health nullable fix (#3882) 2024-02-08 18:22:29 +01:00
bosiraphael
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
Weiko
99e2dd6899
[messaging] Add messageParticipant matching once people emails are updated (#3887)
* poc nest event emitter

* add match message participant listener

* add workspacemember listener

* fix after review

* fix deep-equal
2024-02-08 17:42:33 +01:00
brendanlaschke
c53b593ea6
Custom swagger endpoint for docs (#3869)
* custom swagger endpoint
metadata graphql
remove /rest from endpoint

* fixed pseudo scheme creation

* move graphql playground creation to own file, added navbar to change baseurl and token

* add schema switcher, fix changing url not applied, add invalid overlay

* fix link color

* removed path on Graphql Playground, naming fixes subdoc

* - fixed overflow issue Rest docs

* history replace & goBack

* Small fix GraphQL playground broken

---------

Co-authored-by: Félix Malfait <felix.malfait@gmail.com>
2024-02-08 16:54:20 +01:00
Thomas Trompette
719da29795
Store compact view status (#3850)
* Store compact view status

* Rename to isCompact

* Fixes

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-08 16:33:52 +01:00
Thomas Trompette
6ee179442a
Add one to many relation between opportunity and attachment (#3866)
* Add one to many relation between opportunity and attachment

* Fix opportunity type

---------

Co-authored-by: Thomas Trompette <thomast@twenty.com>
2024-02-08 15:22:52 +01:00
Charles Bochet
7eaf56f566
Fix IconPicker broken storybook tests (#3884) 2024-02-08 15:14:22 +01:00
martmull
bcc62596f6
Add defaultAvatarUrl to core user (#3883)
* Add defaultAvatarUrl to core user

This reverts commit 1701c30eb1.

* Fix

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-08 14:46:37 +01:00
Lucas Bordeau
e2db6a994d
Fixed drawer not closing on task creation on Show Page (#3867)
Fixed close dropdown
2024-02-08 14:12:23 +01:00
martmull
00a46b21dc
3272 add a page to create and edit webhook (#3859)
* Reorganize files

* Add new webhook form

* Reorganize files

* Add Webhook update

* Fix paths

* Code review returns
2024-02-08 13:02:37 +01:00
Jeet Desai
ddc5165178
Added skeleton loader on page load (#3740)
* #3722 added skeleton loader on page load

* #3740 Resolved comment in loader
2024-02-08 12:52:28 +01:00
martmull
7001ca83d1
3491 launch cleaning cron (#3872)
* Add command to delete incomplete workspaces

* Inject command dependencies

* Fix command

* Do not delete core.workspace

* Reorganize files

* Delete src/workspace/cron

* Fix

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-02-07 18:52:48 +01:00