60239353a9
Create new type position ( #4336 )
...
* Create new type position
* Remove position filter type
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com >
2024-03-06 14:41:51 +01:00
0b889ef089
43 add billing portal link ( #4318 )
...
* Add create billing portal session endpoint
* Rename checkout to checkoutSession
* Add billig portal query in twenty-front
* Add billing menu item
* WIP: add menu page
* Code review returns
* Rename request files
* Unwip: add menu page
* Add billing cover image
* Fix icon imports
* Rename parameter
* Add feature flag soon pill
2024-03-05 17:40:58 +01:00
28a093d495
42 add billing portal endpoint ( #4315 )
...
* Add create billing portal session endpoint
* Rename checkout to checkoutSession
* Code review returns
2024-03-05 15:28:45 +01:00
63d403454c
feat: multi-workspace followup ( #4197 )
...
* Seed UserWorkspace for existing demo/dev users
* add workspaces field to currentUser
* new token generation endpoint for switching workspace
* lint fix
* include dependency
* requested fixes
* resolver test pass
* changing defaultWorkspace and workspaceMember when switching workspaces
* tests fix
* requested changes
* delete user/workspace edge case handled
* after merge
* requested changes
* :wq!
* workspace manytoone relation
* lint fix / import fix
* gql codegen
* Fix migrations and generateJWT
* migration fix
* relations fix
---------
Co-authored-by: martmull <martmull@hotmail.fr >
2024-03-04 16:14:04 +01:00
9ca3dbeb70
39 create subscription and success modale ( #4208 )
...
* Init add choose your plan page component
* Update price format
* Add billing refund trial duration env variable
* Add billing benefits
* Add Button
* Call checkout endpoint
* Fix theme color
* Add Payment success modale
* Add loader to createWorkspace submit button
* Fix lint
* Fix dark mode
* Code review returns
* Use a resolver for front requests
* Fix 'create workspace' loader at sign up
* Fix 'create workspace' with enter key bug
2024-02-28 19:51:04 +01:00
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
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
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 1701c30eb18804558293cc42043aedf96ea888df.
* Add defaultAvatarUrl to core user
This reverts commit 1701c30eb18804558293cc42043aedf96ea888df.
* 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 8aa20a34363ffddfdee24f18fc80b27ea0ad5e1d.
* Fix
* Revert "Fix"
This reverts commit 2df7e9b6569b8bfb53f6a45391db725e28d16a18.
* Revert "Revert "Clean Mock Requests""
This reverts commit 3aefef8e9600d161434a047e845563d1b8e0692e.
* Revert "Fix tentative"
This reverts commit 13e7748d6f3b3858d30fb08adbc8ad347c5556ee.
* Update filename
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-02-09 12:06:11 +01:00
3831ddc002
3803 use email visibility to display only the shared information backend ( #3871 )
...
* update dto
* wip
* compute thread visibility
* fix bugs
* fix bug
* improve typing
* working
* update according to comments
* use string
2024-02-07 16:35:19 +01:00
a9349f9fea
Add deleteOneObject mutation ( #3682 )
...
* Add deleteOneObject mutation
* codegen
* move relationToDelete to dedicated file
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-30 09:47:58 +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
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
46f0eb522f
GH-3245 Change password from settings page ( #3538 )
...
* GH-3245 add passwordResetToken and passwordResetTokenExpiresAt column on user entity
* Add password reset token expiry delay env variable
* Add generatePasswordResetToken mutation resolver
* Update .env.sample file on server
* Add password reset token and expiry migration script
* Add validate password reset token query and a dummy password update (WIP) resolver
* Fix bug in password reset token generate
* add update password mutation
* Update name and add email password reset link
* Add change password UI on settings page
* Add reset password route on frontend
* Add reset password form UI
* sign in user on password reset
* format code
* make PASSWORD_RESET_TOKEN_EXPIRES_IN optional
* add email template for password reset
* Improve error message
* Rename methods and DTO to improve naming
* fix formatting of backend code
* Update change password component
* Update password reset via token component
* update graphql files
* spelling fix
* Make password-reset route authless on frontend
* show token generation wait time
* remove constant from .env.example
* Add PASSWORD_RESET_TOKEN_EXPIRES_IN in docs
* refactor emails module in reset password
* update Graphql generated file
* update email template of password reset
* add space between date and text
* update method name
* fix lint issues
* remove unused code, fix indentation, and email link color
* update test file for auth and token service
* Fix ci: build twenty-emails when running tests
---------
Co-authored-by: martmull <martmull@hotmail.fr >
2024-01-25 10:28:48 +01:00
f1b3d1537a
Load views on user load and read in cache ( #3552 )
...
* WIP
* Poc
* Use cached root query + remove proloaded views state
* Fix storybook test + fix codegen
* Return default schema if token is absent, unauthenticated if token is invalid
* Use enum instead of bool
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-22 16:00:16 +01:00
c6ae480856
feat(signup): allow to block signup ( #3209 )
...
* feat(signup): allow to block signup
* feat(signup): update environment variable documentation
* test: update auth service tests
* feat(signup): prevent user from reaching out the sign up page
* Fix lint
* Fixes
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-11 11:48:14 +01:00
46ab88cb9c
GH-2829 Add Sentry on frontend ( #3111 )
...
* GH-2829 pass sentry dsn key from backend in ClientConfig
* GH-2829 add Sentry library on frontend
* GH-2829 fetch dsnKey in GQL and add a state
* GH-2829 initialize Sentry on frontend
* GH-2829 fix linting issues
* Update yarn.lock
* GH-2829 update graphql schema for clientConfig
* GH-2829 remove Sentry comments
* GH-2829 rename sentry state
* GH-2829 rename dsnKey to dsn
* GH-2829 refactor to use componentEffect for sentry initialization
* GH-2829 fix linting issues
* GH-2829 update Graphql types
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2023-12-21 23:50:24 +01:00
1b7580476d
2929 fetch emails from backend and display them in the UI ( #3092 )
...
* sending mock data from the resolver
* add sql raw query to the resolver
* improve query
* fix email component css
* fix query
* css adjustments
* create hard limit for mail display
* fix display name ellipsis
* add service
* fetching email on company page is working
* graphql generate
* move queries into separate files
* add types
* renaming
* add early return
* modified according to comments
* graphql data generate
* fix bug after renaming
* fix issue with mock data
2023-12-21 18:21:07 +01:00
a10f353a4c
feat: redirect to Plan Required page if subscription status is not active ( #2981 )
...
* feat: redirect to Plan Required page if subscription status is not active
Closes #2934
* feat: navigate to Plan Required in PageChangeEffect
* feat: add Twenty logo to Plan Required modal
* test: add Storybook story
* Fix lint
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2023-12-14 12:39:22 +01:00
5bdca9de6c
Migrate to a monorepo structure ( #2909 )
2023-12-10 18:10:54 +01:00