Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

38 add billing webhook endpoint #4158

Merged
merged 30 commits into from
Feb 24, 2024
Merged

Conversation

martmull
Copy link
Contributor

@martmull martmull commented Feb 23, 2024

Branch has been checkout from #4147, please review #4147 before this PR

  • add BILLING_STRIPE_WEBHOOK_SECRET env variable
  • add an endpoint /billing/webhook to listen stripe webhooks
  • create a billingSubscription and billingSubscriptionItems
  • update workspace.activationStatus when webhook received

Copy link

github-actions bot commented Feb 23, 2024

Warnings
⚠️ Changes were made to the environment variables, but not to the documentation - Please review your changes and check if a change needs to be documented!

Generated by 🚫 dangerJS against 1dab978

@martmull martmull marked this pull request as ready for review February 23, 2024 16:28
@martmull martmull changed the base branch from main to 47-add-stripe-checkout-endpoint February 23, 2024 16:39
Base automatically changed from 47-add-stripe-checkout-endpoint to main February 24, 2024 16:19
Copy link
Member

@charlesBochet charlesBochet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great, thank you @martmull :)

@charlesBochet charlesBochet merged commit 05c2060 into main Feb 24, 2024
15 checks passed
@charlesBochet charlesBochet deleted the 38-add-billing-webhook-endpoint branch February 24, 2024 16:30
sanjana0190 added a commit to synapsenet-arena/lead360 that referenced this pull request Mar 6, 2024
* Fixed label transform issues (twentyhq#3985)

* feat: filter people in CommandMenu via last name, email and phone (twentyhq#3997)

* feat: add default value for some type of fields (twentyhq#3991)

feat: add default value for some kind of fields

* fix: invalidate cache when no record inside workspace cache version (twentyhq#3994)

* fix: invalidate cache when no record inside workspace cache version

* fix: use getVersion

* fix: workspace cache version (twentyhq#3999)

* fix: impact too many records (twentyhq#3993)

* fix: impact too many records

* fix: change env name

* fix: remove env name from error

* Fix update on delete record (twentyhq#3996)

* Integrations: design fixes and remove feature flag (twentyhq#4003)

* Integrations: design fixes and remove feature flag

* Fix

* 3757 update frontend to show correct view count (twentyhq#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 <[email protected]>

* Uploading img assets in view of read-me visual update (twentyhq#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

* Docs include field description (twentyhq#3973)

- include field description

* Webhook Docs (twentyhq#3966)

* add webhook docs, openapi v3.1, stoplight v8

* *.*

* Resolve bugs tied to record creations on table (twentyhq#4011)

* Resolve bugs tied to record creations on table

* Fix according to PR

* Fix tests

* Updated the docs typo (twentyhq#3987)

* 3959 create a activationstatus in coreworkspace and use it in front to redirect properly (twentyhq#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

* Fix onboarding status (twentyhq#4019)

* Fix onboarding status

* Add comment

* Fix jest tests

* Small fix website: contributors  (twentyhq#4027)

add link on pr, fix github name first letter missing

* Fix storybook (twentyhq#4028)

* Release 0.3.1 (twentyhq#4031)

* Corrected a typo in the visuals ("TEXT TEXT") (twentyhq#4047)

* Update of the readme with updated visuals (twentyhq#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

* Fix/workspace health type (twentyhq#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

* fix: ignore enum options sync for now (twentyhq#4056)

* 3938 change email auto import to contact ive sent email to (twentyhq#3995)

* done

* working

* wip

* merge main

* almost done

* improvement

* 4008 dont create a contact company if it matches the persons domain (twentyhq#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

* [Enter] key autosave for new API key and webhook (twentyhq#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 <[email protected]>

* 3969 Adjusted Sidebar (twentyhq#3971)

* Label fix

* changes done

* Revert "Label fix"

This reverts commit 1233b58.

---------

Co-authored-by: Félix Malfait <[email protected]>

* Feat/activity optimistic activities (twentyhq#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 <[email protected]>

* fix: Fixed LinkedIn links with unicode (twentyhq#3953)

* fix: Fixed LinkedIn links with unicode

* feat: Added checkUrlType and getDisplayValueByUrlType util functions

* fix: added working `launch.json` for VSCode (twentyhq#4037)

* fix: added working launch json for VScode

* fix: removed unused env

* chore: make twenty-server nest command scripts depend on twenty-email… (twentyhq#4055)

chore: make twenty-server nest command scripts depend on twenty-emails build

Closes twentyhq#4013

* feat: REST endpoints for metadata API (twentyhq#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 <[email protected]>

* Resolved text editor styled (twentyhq#4033)

twentyhq#3998 resolved text editor styled

Co-authored-by: Charles Bochet <[email protected]>

* fix: unwanted comment on graphQL input (twentyhq#4071)

* Fix delete with no result should not throw (twentyhq#4091)

* Fix delete with no result should not throw

* add logs

* Delete packages/twenty-server/src/database/typeorm/metadata/migrations/1708442904165-addOnDeleteActionToRelationMetadata.ts

* fix: sync and health (twentyhq#4095)

* fix: throw error if we try to create a migration without columnName

* fix: typeorm save for update breaking everything

* Fix workspace enum migration bug

* feat: create Settings/Accounts/Calendars page (twentyhq#4090)

* feat: create Settings/Accounts/Calendars page

Closes twentyhq#4059

* docs: add SettingsAccountsCalendars stories

* refactor: add SettingsNavigationDrawerItem component

* 4008 dont create a contact company if it matches the persons domain (twentyhq#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

* fix: workspace health undefined relation (twentyhq#4107)

* feat: create Settings/Accounts/Calendars/Calendar Settings page (twentyhq#4092)

* feat: create Settings/Accounts/Calendars/Calendar Settings page

Closes twentyhq#4063

* docs: add SettingsAccountsCalendarsSettings stories

* Fix developers url and remove webhook url error (twentyhq#4120)

Fix developers url + remove webhook url error

Co-authored-by: Thomas Trompette <[email protected]>

* Added beta tag in email (twentyhq#4098)

twentyhq#4040 added beta tag

* feat: add Calendar Settings section to Settings/Accounts/Calendars page (twentyhq#4104)

* feat: add Calendar Settings section to Settings/Accounts/Calendars page

Closes twentyhq#4060

* refactor: rename components

* feat: add Synchronization calendar settings (twentyhq#4111)

* feat: add Calendar Settings section to Settings/Accounts/Calendars page

Closes twentyhq#4060

* refactor: rename components

* feat: add Synchronization calendar settings

Closes twentyhq#4066

* Updated tasks inbox empty state wording (twentyhq#4121)

twentyhq#4078 change task empty text word

* Fix number csv import (twentyhq#4114)

fix number csv import

* 45 create billing core tables (twentyhq#4096)

* Add self billing feature flag

* Add two core tables for billing

* Remove useless imports

* Remove graphql decorators

* Rename subscriptionProduct table

* Add confirmation modal when deleting/ regenerating api keys, deleting webhook (twentyhq#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 <[email protected]>

* Refactor/finish activities optimistic (twentyhq#4106)

* Finished optimistic effects

* Fixed tests

* Added unit test on useActivityConnectionUtils to prepare for refactor

* Fixed console.log

* feat: allow backend to rename field of custom object (twentyhq#4097)

* feat: allow backend to rename field of custom object

* feat: allow custom field label edition in Settings

Closes twentyhq#4080

* fix: avoid renaming standard fields

---------

Co-authored-by: Thaïs Guigon <[email protected]>

* Add onDeleteAction to RelationMetadata (twentyhq#4100)

* Add onDeleteAction to relationMetadata

* rename to SET NULL

* fix migration

* fix migration

* fix after review

* feat: add Accounts List Card to Calendar Settings (twentyhq#4129)

Closes twentyhq#4061

* Fix server import case

* 3933 filter non work email from auto contact creation (twentyhq#4131)

* use isWorkEmail

* working

* improvement

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

* refactor lodash import

* Add writeLog for relation update sync metadata (twentyhq#4136)

* Add writeLog for relation update sync metadata

* fix health check

* Fix referential_constraints health check (twentyhq#4139)

* feat: add Contact Auto-Creation calendar settings (twentyhq#4132)

* feat: add Contact Auto-Creation calendar settings

Closes twentyhq#4065

* fix: fix wrong Section component import

* fix: fix wrong Toggle import

* feat: add Event Visibility calendar settings (twentyhq#4138)

Closes twentyhq#4064

* 46 add stripe product endpoint (twentyhq#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

* Handle relations between same objects (twentyhq#4137)

* Handle relations between same objects

* Simplify conditions

---------

Co-authored-by: Thomas Trompette <[email protected]>

* 4020 timebox improve performances on messages read (twentyhq#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 852fd3c.

* use WorkspaceDataSourceModule

* WIP: New User Guide (twentyhq#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

* 4150 i should be able to view my emails even if ive set my account visibility to metadata (twentyhq#4156)

* improve timeline messaging to allow users to view the threads to which they participated

* working

* improvement

* improvements

* improvements

* fix

* remove unnecessary type

* New folder structure for website (twentyhq#4159)

New folder structure

* Improved activity editor re-renders (twentyhq#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

* Fixed DeveloperSettings stories (twentyhq#4166)

* Fixed Developer Settings page Storybook.

* Remove unused stories

---------

Co-authored-by: Charles Bochet <[email protected]>

* Remove usage of toSorted as it is not fully supported (twentyhq#4168)

* Website: markdown to release (twentyhq#4146)

* website: markdown to release

* remove Image.png

* fixed font weight

* Change folder structure

* remove react-markdown

---------

Co-authored-by: Félix Malfait <[email protected]>

* Build cron for data seed demo (twentyhq#4142)

* Migrate command to cron

* Put back command using job as well

* Build service and module + move into folder

---------

Co-authored-by: Thomas Trompette <[email protected]>

* fix: forbid creation of objects or fields with certain characters or with forbidden keywords that clashes with pg_graphql (twentyhq#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

* feat: add Color calendar setting (twentyhq#4141)

* feat: add Color calendar setting

Closes twentyhq#4067

* fix: fix wrong imports

---------

Co-authored-by: Charles Bochet <[email protected]>

* feat: add Display calendar settings (twentyhq#4164)

* feat: add Color calendar setting

Closes twentyhq#4067

* fix: fix wrong imports

* feat: add Display calendar settings

Closes twentyhq#4068

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

* fix tests

* Fix

* Fix

---------

Co-authored-by: Charles Bochet <[email protected]>

* TWNTY-3968 - Fix and enhance storybook:pages tests (twentyhq#4072)

* Fix and enhance storybook:pages tests

Co-authored-by: Thiago Nascimbeni <[email protected]>

* Fix and enhance storybook:pages tests

Co-authored-by: v1b3m <[email protected]>
Co-authored-by: Thiago Nascimbeni <[email protected]>

* Add minor refactors

Co-authored-by: v1b3m <[email protected]>
Co-authored-by: Thiago Nascimbeni <[email protected]>

* Revert temporary changes

Co-authored-by: v1b3m <[email protected]>
Co-authored-by: Thiago Nascimbeni <[email protected]>

* Fix tests

* Fix tests duplicated locale

---------

Co-authored-by: gitstart-twenty <[email protected]>
Co-authored-by: Thiago Nascimbeni <[email protected]>
Co-authored-by: v1b3m <[email protected]>
Co-authored-by: Charles Bochet <[email protected]>

* 47 add stripe checkout endpoint (twentyhq#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

* 38 add billing webhook endpoint (twentyhq#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 <[email protected]>

* feat: find duplicate objects init (twentyhq#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 <[email protected]>

* MQ Facepaint introduced (twentyhq#4169)

* MQ Facepaint introduced

* Remove useDeviceType

---------

Co-authored-by: Félix Malfait <[email protected]>

* feat: validate webhook URL (twentyhq#4144)

* feat: validate webhook URL

* fix: use existing util method

* Add return statement

---------

Co-authored-by: Charles Bochet <[email protected]>

* feat: user can have multiple workspaces (backend) (twentyhq#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 <[email protected]>

* Refactor sign-up into its own service (twentyhq#4173)

* Refactor sign-up into its own service

* Fix tests

* TWNTY-3825 - ESLint rule: const naming (twentyhq#4171)

* ESLint rule: const naming

Co-authored-by: v1b3m <[email protected]>
Co-authored-by: KlingerMatheus <[email protected]>

* Refactor according to review

Co-authored-by: v1b3m <[email protected]>
Co-authored-by: KlingerMatheus <[email protected]>

* refactor: Reverts changes on `twenty-server`

Co-authored-by: KlingerMatheus <[email protected]>
Co-authored-by: v1b3m <[email protected]>

---------

Co-authored-by: gitstart-twenty <[email protected]>
Co-authored-by: v1b3m <[email protected]>
Co-authored-by: KlingerMatheus <[email protected]>

* Add linter to Chrome Extension (twentyhq#4044). (twentyhq#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

* 3961-Notes-Relation-Field (twentyhq#3965)

* Label fix

* Remove semicolumn

* Fix broken layout

---------

Co-authored-by: Charles Bochet <[email protected]>

* fix: prevent scroll to softfocus cell when hover (twentyhq#3990)

* Removed the boxes around fields on shows and side panel (twentyhq#4032)

twentyhq#3963 removed border and padding

Co-authored-by: Charles Bochet <[email protected]>

* fix: set a specifc date to date field input on the story  (twentyhq#3919)

* fix: set a specifc date to date field input on the story and set the state on record store family selector

* test: add an interaction test to verify the specific date

* Feat currency type optimistic cache (twentyhq#3907)

* feat: currency type in optimisitc cache update

* Add test for optimisitc currency cache

* Refactor error message for currency filter to be more accurate

* Fix

---------

Co-authored-by: Charles Bochet <[email protected]>

* Fix website build

* Fix website build

* Chrome Extension: Update logo and change default routes to those of Twenty prod (twentyhq#4046). (twentyhq#4172)

* fix: replace twenty logo in the png format with one in the svg format for better resolution

* fix: toggle the custom url switch to true if the local storage contains a server base url different from that of the env variable

* fix: update the front base url and the server base url to those of the production environment in the .env.example file

* fix: update README to add a step for changing env variables to those of the development environment for contributors or local testers

* Update docker-compose.mdx (twentyhq#4178)

Fixed syntax errors in the docker-compose
added step-by-step instructions

* Ignore defaultValue update for select fields (twentyhq#4193)

* Ignore defaultValue update for select fields

* Fix tests

* [messaging] clean orphan threads and messages after connected account deletion (twentyhq#4195)

* [messaging] add connected account associated data delete

* add threadCleanerService

* fix

* fix import

* add thread cleaner import

* remove log

* Fixed confirmation modal not closing after regenerating API key (twentyhq#4192)

Fixed modal not closing after regenerating API key

* 4026 create storybook tests for blocklist components (twentyhq#4185)

* Add SettingsAccountsEmailsBlocklistInput story

* Add SettingsAccountsEmailsBlocklistSection story

* Add SettingsAccountsEmailsBlocklistTable story

* Add SettingsAccountsEmailsBlocklistTableRow story

* wip

* add play

* add play

* add delete from blocklist test

* wip

* wip

* done

* Fixed favicon requests for empty domain names (twentyhq#4191)

* Fixed favicon requests for empty domain names

* Fixed the test case for undefined domain name

* Fix password too short issue (twentyhq#4200)

Add dependencies to hotscope key

Co-authored-by: Thomas Trompette <[email protected]>

* Fix demo workspace seed (twentyhq#4211)

* 4017 improve queries on messages write (twentyhq#4207)

* modify code to reduce nested loops and improve performances

* is working

* fix lastSyncHistoryId

* create new service to share it betweent partial sync and full sync

* update partial sync

* update batch limit

* renaming

* adding logs

* update logs

* update logs

* update logs

* delete messages if error while saving the participants

* refactoring

* improving logs

* update logs

* delete historyId if outdated

* fix: Extend regex in Linkedin Field to support LinkedIn school URL (twentyhq#4198)

* [messaging] fix empty history (twentyhq#4218)

* Add pagination to partial sync and add logs (twentyhq#4223)

* update gmail partial sync to add pagination

* adding logs

* update

* improve readability

* Update relation cascade on standard objects favorite, attachment, activityTargets (twentyhq#4227)

* 39 create subscription and success modale (twentyhq#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

* fix: design of technical documentation  (twentyhq#4231)

fixes design

* Fix nullable being set to null for text field (twentyhq#4239)

* Remove html from messages (twentyhq#4229)

* remove html

* remove html

* remove html from db

* 4209 speed up gmail full sync by using search params to query only the relevant emails (twentyhq#4213)

* create blocklist service

* blocklist is working on email import in full sync

* add log

* add blocklist to partial sync

* define rule for blocklist imports

* gmail filter is working

* correct typo

* fix bugs

* getCompanyNameFromDomainName

* renaming

* remove unused service

* add transaction

* TWNTY-3316 - Add tests for `modules/spreadsheet-import` (twentyhq#4219)

Add tests for `modules/spreadsheet-import`

Co-authored-by: gitstart-twenty <[email protected]>
Co-authored-by: RubensRafael <[email protected]>

* feat: apply RecordDetailSection style on RecordDuplicatesSection and … (twentyhq#4241)

feat: apply RecordDetailSection style on RecordDuplicatesSection and add stories

Closes twentyhq#3963, Closes twentyhq#4240

* feat: add Object Edit Settings section with Object preview (twentyhq#4216)

* feat: add Object Edit Settings section with Object preview

Closes twentyhq#3834

* fix: fix preview card stories

* test: improve getFieldDefaultPreviewValue tests

* test: add getFieldPreviewValueFromRecord tests

* test: add useFieldPreview tests

* refactor: rename and move components

* fix: restore RecordStoreDecorator

* feat: adjust navigation drawer design (twentyhq#4242)

Closes twentyhq#3969, Closes twentyhq#4240

* test: improve utils coverage (twentyhq#4230)

* test: improve utils coverage

* refactor: review - rename isDefined to isNonNullable, update tests and return statement

* [messaging] add better logs to messaging sync jobs (twentyhq#4245)

* Handle multiple orderBy sorting (twentyhq#4246)

Co-authored-by: Thomas Trompette <[email protected]>

* Add export as csv (twentyhq#4034)

* Add export as csv

Resolves 2183.

* collect over paginated data

* refactor

* add tests

* parameterize pageSize (limit)

* use pageInfo for onCompleted callback

* json column variable naming

* omit relations from csv exports

* Expose releases as an api (twentyhq#4247)

* Add error handling in GmailPartialSyncService (twentyhq#4248)

* Add error handling in GmailPartialSyncService

* improve typing

* Enable new record board and messaging for all workspaces except demo (twentyhq#4243)

* Enable new record board and messaging for all workspaces except demo

* Fix according to PR

* Added a 'Read documentation' button in the Developers tab in settings (twentyhq#4249)

* Remove Gate decorator IS_BLOCKLIST_ENABLED from BlocklistObjectMetadata (twentyhq#4250)

* Remove Gate decorator from BlocklistObjectMetadata

* check if blocklist is enabled

* wip

* done

* Fix enum defaultValue broken (twentyhq#4251)

* Fix enum defaultValue broken

* Fix

* Fix

* Fix default value being set to null when not provider to fieldMetadataUpdate

* Fix blocklist standard object being unhealthy (twentyhq#4255)

Fix blocklist standard object unhealthy

* Fix broken storybook tests on SettingsPreview

* Handle error 429 during partial sync (twentyhq#4258)

handle error 429

* Improve website github sync (twentyhq#4259)

* TWNTY-3942 - Enable Attachments on Custom Objects (twentyhq#4253)

* Enable Attachments on Custom Objects

Co-authored-by: v1b3m <[email protected]>

* Revert changes to the client

Co-authored-by: v1b3m <[email protected]>

---------

Co-authored-by: gitstart-twenty <[email protected]>
Co-authored-by: v1b3m <[email protected]>

* 41 update subscription when workspace member changes 2 (twentyhq#4252)

* Add loader and disabling on checkout button

* Add Stripe Subscription Item id to subscriptionItem entity

* Handle create and delete workspace members

* Update billing webhook

* Make stripe attribute private

* Fixing webhook error

* Clean migration

* Cancel subscription when deleting workspace

* Fix test

* Add freetrial

* Update navigate after signup

* Add automatic tax collection

---------

Co-authored-by: Swayam Vasavada <[email protected]>
Co-authored-by: rostaklein <[email protected]>
Co-authored-by: Jérémy M <[email protected]>
Co-authored-by: Weiko <[email protected]>
Co-authored-by: Charles Bochet <[email protected]>
Co-authored-by: martmull <[email protected]>
Co-authored-by: Charles Bochet <[email protected]>
Co-authored-by: Thomas des Francs <[email protected]>
Co-authored-by: brendanlaschke <[email protected]>
Co-authored-by: Pranav <[email protected]>
Co-authored-by: bosiraphael <[email protected]>
Co-authored-by: Jonathanlemon <[email protected]>
Co-authored-by: Félix Malfait <[email protected]>
Co-authored-by: Kanav Arora <[email protected]>
Co-authored-by: Lucas Bordeau <[email protected]>
Co-authored-by: Zoltán Völcsey <[email protected]>
Co-authored-by: Thaïs <[email protected]>
Co-authored-by: Aditya Pimpalkar <[email protected]>
Co-authored-by: Jeet Desai <[email protected]>
Co-authored-by: Thomas Trompette <[email protected]>
Co-authored-by: Thomas Trompette <[email protected]>
Co-authored-by: Anoop P <[email protected]>
Co-authored-by: Aayush-23 <[email protected]>
Co-authored-by: Mohamed Houssein Douici <[email protected]>
Co-authored-by: gitstart-app[bot] <57568882+gitstart-app[bot]@users.noreply.github.com>
Co-authored-by: gitstart-twenty <[email protected]>
Co-authored-by: Thiago Nascimbeni <[email protected]>
Co-authored-by: v1b3m <[email protected]>
Co-authored-by: KlingerMatheus <[email protected]>
Co-authored-by: Abdullah <[email protected]>
Co-authored-by: AutoComput <[email protected]>
Co-authored-by: Sohal Kumar Singh <[email protected]>
Co-authored-by: Elton Goh Jun Hao <[email protected]>
Co-authored-by: Shreerang Patil <[email protected]>
Co-authored-by: RubensRafael <[email protected]>
Co-authored-by: Tate Thurston <[email protected]>
Co-authored-by: Shubham Pawar <[email protected]>
srp-pawar added a commit to synapsenet-arena/lead360 that referenced this pull request Jun 19, 2024
commit fdab0f7
Author: Sanjana <[email protected]>
Date:   Tue Apr 30 17:24:15 2024 +0530

    Updated Leads Table

commit 26033f1
Author: Shubham Pawar <[email protected]>
Date:   Tue Apr 30 17:03:26 2024 +0530

    updated request body for campaign trigger and created api

commit 83aec61
Author: Sanjana <[email protected]>
Date:   Mon Apr 29 15:09:03 2024 +0530

    campaign display and run functionality updated

commit 527236a
Author: Shubham Pawar <[email protected]>
Date:   Wed Apr 24 18:51:38 2024 +0530

    added id as a parameter in Campaign Form2 and Form3

commit 3b1a0c1
Author: sanjana0190 <[email protected]>
Date:   Tue Apr 23 16:17:21 2024 +0530

    Feature/airflow trigger api (#4)

    * added identified stage trigger

    * changed the name of object with standard Fields

    * added return statement to  execute API

    ---------

    Co-authored-by: Shubham Pawar <[email protected]>

commit 32201d1
Author: sanjana0190 <[email protected]>
Date:   Tue Apr 23 16:06:44 2024 +0530

    Feature/campaign trigger (#3)

    * updated Campaign trigger with the newly created  Object

    This reverts commit 31f1195.

    * Updated Campaign Trigger Functionality

    ---------

    Co-authored-by: Shubham Pawar <[email protected]>

commit 31f1195
Author: Sanjana <[email protected]>
Date:   Mon Apr 22 11:05:58 2024 +0530

    Updated Campaign Trigger Modal

commit ecc8b92
Author: Sanjana <[email protected]>
Date:   Fri Apr 12 17:24:55 2024 +0530

    Added Trigger Campaign UI and functionality

commit 99b2359
Author: Sanjana <[email protected]>
Date:   Wed Apr 3 17:47:14 2024 +0530

    Updated UI

commit de60b63
Author: Shubham Pawar <[email protected]>
Date:   Tue Mar 26 16:12:13 2024 +0530

    Created Campaign Form that is publicly available

commit 8edda7a
Author: Shubham Pawar <[email protected]>
Date:   Wed Mar 13 18:16:56 2024 +0530

    completed End to End Flow for Leads

commit 4c629cd
Author: Shubham Pawar <[email protected]>
Date:   Wed Mar 13 16:29:22 2024 +0530

    used useCampaign() hook for specifying selected specialty type

commit 0070ec0
Author: sanjana0190 <[email protected]>
Date:   Wed Mar 13 12:39:40 2024 +0530

    styled modal for lead data preview

commit ef826c8
Author: sanjana0190 <[email protected]>
Date:   Wed Mar 13 12:13:39 2024 +0530

    added modal for lead data preview

commit 248d581
Merge: edbbd9b c5afc01
Author: sanjana0190 <[email protected]>
Date:   Wed Mar 13 11:08:26 2024 +0530

    Merge branch 'feature/template_campaign' of https://github.com/synapsenet-arena/lead360 into feature/template_campaign

commit edbbd9b
Author: sanjana0190 <[email protected]>
Date:   Wed Mar 13 11:05:51 2024 +0530

    updates leads functionality

commit c5afc01
Author: Shubham Pawar <[email protected]>
Date:   Fri Mar 8 15:46:11 2024 +0530

    Added Scrollbar functionality to the campaigns Page

commit 69fa952
Author: sanjana0190 <[email protected]>
Date:   Fri Mar 8 14:49:39 2024 +0530

    Updated Campaigns Page

commit 04030b3
Author: sanjana0190 <[email protected]>
Date:   Wed Mar 6 17:42:13 2024 +0530

    Sync Twenty changes (from dev to feature/template_campaign) (#1)

    * Fixed label transform issues (twentyhq#3985)

    * feat: filter people in CommandMenu via last name, email and phone (twentyhq#3997)

    * feat: add default value for some type of fields (twentyhq#3991)

    feat: add default value for some kind of fields

    * fix: invalidate cache when no record inside workspace cache version (twentyhq#3994)

    * fix: invalidate cache when no record inside workspace cache version

    * fix: use getVersion

    * fix: workspace cache version (twentyhq#3999)

    * fix: impact too many records (twentyhq#3993)

    * fix: impact too many records

    * fix: change env name

    * fix: remove env name from error

    * Fix update on delete record (twentyhq#3996)

    * Integrations: design fixes and remove feature flag (twentyhq#4003)

    * Integrations: design fixes and remove feature flag

    * Fix

    * 3757 update frontend to show correct view count (twentyhq#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 <[email protected]>

    * Uploading img assets in view of read-me visual update (twentyhq#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

    * Docs include field description (twentyhq#3973)

    - include field description

    * Webhook Docs (twentyhq#3966)

    * add webhook docs, openapi v3.1, stoplight v8

    * *.*

    * Resolve bugs tied to record creations on table (twentyhq#4011)

    * Resolve bugs tied to record creations on table

    * Fix according to PR

    * Fix tests

    * Updated the docs typo (twentyhq#3987)

    * 3959 create a activationstatus in coreworkspace and use it in front to redirect properly (twentyhq#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

    * Fix onboarding status (twentyhq#4019)

    * Fix onboarding status

    * Add comment

    * Fix jest tests

    * Small fix website: contributors  (twentyhq#4027)

    add link on pr, fix github name first letter missing

    * Fix storybook (twentyhq#4028)

    * Release 0.3.1 (twentyhq#4031)

    * Corrected a typo in the visuals ("TEXT TEXT") (twentyhq#4047)

    * Update of the readme with updated visuals (twentyhq#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

    * Fix/workspace health type (twentyhq#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

    * fix: ignore enum options sync for now (twentyhq#4056)

    * 3938 change email auto import to contact ive sent email to (twentyhq#3995)

    * done

    * working

    * wip

    * merge main

    * almost done

    * improvement

    * 4008 dont create a contact company if it matches the persons domain (twentyhq#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

    * [Enter] key autosave for new API key and webhook (twentyhq#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 <[email protected]>

    * 3969 Adjusted Sidebar (twentyhq#3971)

    * Label fix

    * changes done

    * Revert "Label fix"

    This reverts commit 1233b58.

    ---------

    Co-authored-by: Félix Malfait <[email protected]>

    * Feat/activity optimistic activities (twentyhq#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 <[email protected]>

    * fix: Fixed LinkedIn links with unicode (twentyhq#3953)

    * fix: Fixed LinkedIn links with unicode

    * feat: Added checkUrlType and getDisplayValueByUrlType util functions

    * fix: added working `launch.json` for VSCode (twentyhq#4037)

    * fix: added working launch json for VScode

    * fix: removed unused env

    * chore: make twenty-server nest command scripts depend on twenty-email… (twentyhq#4055)

    chore: make twenty-server nest command scripts depend on twenty-emails build

    Closes twentyhq#4013

    * feat: REST endpoints for metadata API (twentyhq#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 <[email protected]>

    * Resolved text editor styled (twentyhq#4033)

    Co-authored-by: Charles Bochet <[email protected]>

    * fix: unwanted comment on graphQL input (twentyhq#4071)

    * Fix delete with no result should not throw (twentyhq#4091)

    * Fix delete with no result should not throw

    * add logs

    * Delete packages/twenty-server/src/database/typeorm/metadata/migrations/1708442904165-addOnDeleteActionToRelationMetadata.ts

    * fix: sync and health (twentyhq#4095)

    * fix: throw error if we try to create a migration without columnName

    * fix: typeorm save for update breaking everything

    * Fix workspace enum migration bug

    * feat: create Settings/Accounts/Calendars page (twentyhq#4090)

    * feat: create Settings/Accounts/Calendars page

    Closes twentyhq#4059

    * docs: add SettingsAccountsCalendars stories

    * refactor: add SettingsNavigationDrawerItem component

    * 4008 dont create a contact company if it matches the persons domain (twentyhq#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

    * fix: workspace health undefined relation (twentyhq#4107)

    * feat: create Settings/Accounts/Calendars/Calendar Settings page (twentyhq#4092)

    * feat: create Settings/Accounts/Calendars/Calendar Settings page

    Closes twentyhq#4063

    * docs: add SettingsAccountsCalendarsSettings stories

    * Fix developers url and remove webhook url error (twentyhq#4120)

    Fix developers url + remove webhook url error

    Co-authored-by: Thomas Trompette <[email protected]>

    * Added beta tag in email (twentyhq#4098)

    * feat: add Calendar Settings section to Settings/Accounts/Calendars page (twentyhq#4104)

    * feat: add Calendar Settings section to Settings/Accounts/Calendars page

    Closes twentyhq#4060

    * refactor: rename components

    * feat: add Synchronization calendar settings (twentyhq#4111)

    * feat: add Calendar Settings section to Settings/Accounts/Calendars page

    Closes twentyhq#4060

    * refactor: rename components

    * feat: add Synchronization calendar settings

    Closes twentyhq#4066

    * Updated tasks inbox empty state wording (twentyhq#4121)

    * Fix number csv import (twentyhq#4114)

    fix number csv import

    * 45 create billing core tables (twentyhq#4096)

    * Add self billing feature flag

    * Add two core tables for billing

    * Remove useless imports

    * Remove graphql decorators

    * Rename subscriptionProduct table

    * Add confirmation modal when deleting/ regenerating api keys, deleting webhook (twentyhq#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 <[email protected]>

    * Refactor/finish activities optimistic (twentyhq#4106)

    * Finished optimistic effects

    * Fixed tests

    * Added unit test on useActivityConnectionUtils to prepare for refactor

    * Fixed console.log

    * feat: allow backend to rename field of custom object (twentyhq#4097)

    * feat: allow backend to rename field of custom object

    * feat: allow custom field label edition in Settings

    Closes twentyhq#4080

    * fix: avoid renaming standard fields

    ---------

    Co-authored-by: Thaïs Guigon <[email protected]>

    * Add onDeleteAction to RelationMetadata (twentyhq#4100)

    * Add onDeleteAction to relationMetadata

    * rename to SET NULL

    * fix migration

    * fix migration

    * fix after review

    * feat: add Accounts List Card to Calendar Settings (twentyhq#4129)

    Closes twentyhq#4061

    * Fix server import case

    * 3933 filter non work email from auto contact creation (twentyhq#4131)

    * use isWorkEmail

    * working

    * improvement

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

    * refactor lodash import

    * Add writeLog for relation update sync metadata (twentyhq#4136)

    * Add writeLog for relation update sync metadata

    * fix health check

    * Fix referential_constraints health check (twentyhq#4139)

    * feat: add Contact Auto-Creation calendar settings (twentyhq#4132)

    * feat: add Contact Auto-Creation calendar settings

    Closes twentyhq#4065

    * fix: fix wrong Section component import

    * fix: fix wrong Toggle import

    * feat: add Event Visibility calendar settings (twentyhq#4138)

    Closes twentyhq#4064

    * 46 add stripe product endpoint (twentyhq#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

    * Handle relations between same objects (twentyhq#4137)

    * Handle relations between same objects

    * Simplify conditions

    ---------

    Co-authored-by: Thomas Trompette <[email protected]>

    * 4020 timebox improve performances on messages read (twentyhq#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 852fd3c.

    * use WorkspaceDataSourceModule

    * WIP: New User Guide (twentyhq#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

    * 4150 i should be able to view my emails even if ive set my account visibility to metadata (twentyhq#4156)

    * improve timeline messaging to allow users to view the threads to which they participated

    * working

    * improvement

    * improvements

    * improvements

    * fix

    * remove unnecessary type

    * New folder structure for website (twentyhq#4159)

    New folder structure

    * Improved activity editor re-renders (twentyhq#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

    * Fixed DeveloperSettings stories (twentyhq#4166)

    * Fixed Developer Settings page Storybook.

    * Remove unused stories

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * Remove usage of toSorted as it is not fully supported (twentyhq#4168)

    * Website: markdown to release (twentyhq#4146)

    * website: markdown to release

    * remove Image.png

    * fixed font weight

    * Change folder structure

    * remove react-markdown

    ---------

    Co-authored-by: Félix Malfait <[email protected]>

    * Build cron for data seed demo (twentyhq#4142)

    * Migrate command to cron

    * Put back command using job as well

    * Build service and module + move into folder

    ---------

    Co-authored-by: Thomas Trompette <[email protected]>

    * fix: forbid creation of objects or fields with certain characters or with forbidden keywords that clashes with pg_graphql (twentyhq#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

    * feat: add Color calendar setting (twentyhq#4141)

    * feat: add Color calendar setting

    Closes twentyhq#4067

    * fix: fix wrong imports

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * feat: add Display calendar settings (twentyhq#4164)

    * feat: add Color calendar setting

    Closes twentyhq#4067

    * fix: fix wrong imports

    * feat: add Display calendar settings

    Closes twentyhq#4068

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

    * fix tests

    * Fix

    * Fix

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * TWNTY-3968 - Fix and enhance storybook:pages tests (twentyhq#4072)

    * Fix and enhance storybook:pages tests

    Co-authored-by: Thiago Nascimbeni <[email protected]>

    * Fix and enhance storybook:pages tests

    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: Thiago Nascimbeni <[email protected]>

    * Add minor refactors

    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: Thiago Nascimbeni <[email protected]>

    * Revert temporary changes

    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: Thiago Nascimbeni <[email protected]>

    * Fix tests

    * Fix tests duplicated locale

    ---------

    Co-authored-by: gitstart-twenty <[email protected]>
    Co-authored-by: Thiago Nascimbeni <[email protected]>
    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: Charles Bochet <[email protected]>

    * 47 add stripe checkout endpoint (twentyhq#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

    * 38 add billing webhook endpoint (twentyhq#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 <[email protected]>

    * feat: find duplicate objects init (twentyhq#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 <[email protected]>

    * MQ Facepaint introduced (twentyhq#4169)

    * MQ Facepaint introduced

    * Remove useDeviceType

    ---------

    Co-authored-by: Félix Malfait <[email protected]>

    * feat: validate webhook URL (twentyhq#4144)

    * feat: validate webhook URL

    * fix: use existing util method

    * Add return statement

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * feat: user can have multiple workspaces (backend) (twentyhq#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 <[email protected]>

    * Refactor sign-up into its own service (twentyhq#4173)

    * Refactor sign-up into its own service

    * Fix tests

    * TWNTY-3825 - ESLint rule: const naming (twentyhq#4171)

    * ESLint rule: const naming

    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: KlingerMatheus <[email protected]>

    * Refactor according to review

    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: KlingerMatheus <[email protected]>

    * refactor: Reverts changes on `twenty-server`

    Co-authored-by: KlingerMatheus <[email protected]>
    Co-authored-by: v1b3m <[email protected]>

    ---------

    Co-authored-by: gitstart-twenty <[email protected]>
    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: KlingerMatheus <[email protected]>

    * Add linter to Chrome Extension (twentyhq#4044). (twentyhq#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

    * 3961-Notes-Relation-Field (twentyhq#3965)

    * Label fix

    * Remove semicolumn

    * Fix broken layout

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * fix: prevent scroll to softfocus cell when hover (twentyhq#3990)

    * Removed the boxes around fields on shows and side panel (twentyhq#4032)

    Co-authored-by: Charles Bochet <[email protected]>

    * fix: set a specifc date to date field input on the story  (twentyhq#3919)

    * fix: set a specifc date to date field input on the story and set the state on record store family selector

    * test: add an interaction test to verify the specific date

    * Feat currency type optimistic cache (twentyhq#3907)

    * feat: currency type in optimisitc cache update

    * Add test for optimisitc currency cache

    * Refactor error message for currency filter to be more accurate

    * Fix

    ---------

    Co-authored-by: Charles Bochet <[email protected]>

    * Fix website build

    * Fix website build

    * Chrome Extension: Update logo and change default routes to those of Twenty prod (twentyhq#4046). (twentyhq#4172)

    * fix: replace twenty logo in the png format with one in the svg format for better resolution

    * fix: toggle the custom url switch to true if the local storage contains a server base url different from that of the env variable

    * fix: update the front base url and the server base url to those of the production environment in the .env.example file

    * fix: update README to add a step for changing env variables to those of the development environment for contributors or local testers

    * Update docker-compose.mdx (twentyhq#4178)

    Fixed syntax errors in the docker-compose
    added step-by-step instructions

    * Ignore defaultValue update for select fields (twentyhq#4193)

    * Ignore defaultValue update for select fields

    * Fix tests

    * [messaging] clean orphan threads and messages after connected account deletion (twentyhq#4195)

    * [messaging] add connected account associated data delete

    * add threadCleanerService

    * fix

    * fix import

    * add thread cleaner import

    * remove log

    * Fixed confirmation modal not closing after regenerating API key (twentyhq#4192)

    Fixed modal not closing after regenerating API key

    * 4026 create storybook tests for blocklist components (twentyhq#4185)

    * Add SettingsAccountsEmailsBlocklistInput story

    * Add SettingsAccountsEmailsBlocklistSection story

    * Add SettingsAccountsEmailsBlocklistTable story

    * Add SettingsAccountsEmailsBlocklistTableRow story

    * wip

    * add play

    * add play

    * add delete from blocklist test

    * wip

    * wip

    * done

    * Fixed favicon requests for empty domain names (twentyhq#4191)

    * Fixed favicon requests for empty domain names

    * Fixed the test case for undefined domain name

    * Fix password too short issue (twentyhq#4200)

    Add dependencies to hotscope key

    Co-authored-by: Thomas Trompette <[email protected]>

    * Fix demo workspace seed (twentyhq#4211)

    * 4017 improve queries on messages write (twentyhq#4207)

    * modify code to reduce nested loops and improve performances

    * is working

    * fix lastSyncHistoryId

    * create new service to share it betweent partial sync and full sync

    * update partial sync

    * update batch limit

    * renaming

    * adding logs

    * update logs

    * update logs

    * update logs

    * delete messages if error while saving the participants

    * refactoring

    * improving logs

    * update logs

    * delete historyId if outdated

    * fix: Extend regex in Linkedin Field to support LinkedIn school URL (twentyhq#4198)

    * [messaging] fix empty history (twentyhq#4218)

    * Add pagination to partial sync and add logs (twentyhq#4223)

    * update gmail partial sync to add pagination

    * adding logs

    * update

    * improve readability

    * Update relation cascade on standard objects favorite, attachment, activityTargets (twentyhq#4227)

    * 39 create subscription and success modale (twentyhq#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

    * fix: design of technical documentation  (twentyhq#4231)

    fixes design

    * Fix nullable being set to null for text field (twentyhq#4239)

    * Remove html from messages (twentyhq#4229)

    * remove html

    * remove html

    * remove html from db

    * 4209 speed up gmail full sync by using search params to query only the relevant emails (twentyhq#4213)

    * create blocklist service

    * blocklist is working on email import in full sync

    * add log

    * add blocklist to partial sync

    * define rule for blocklist imports

    * gmail filter is working

    * correct typo

    * fix bugs

    * getCompanyNameFromDomainName

    * renaming

    * remove unused service

    * add transaction

    * TWNTY-3316 - Add tests for `modules/spreadsheet-import` (twentyhq#4219)

    Add tests for `modules/spreadsheet-import`

    Co-authored-by: gitstart-twenty <[email protected]>
    Co-authored-by: RubensRafael <[email protected]>

    * feat: apply RecordDetailSection style on RecordDuplicatesSection and … (twentyhq#4241)

    feat: apply RecordDetailSection style on RecordDuplicatesSection and add stories

    Closes twentyhq#3963, Closes twentyhq#4240

    * feat: add Object Edit Settings section with Object preview (twentyhq#4216)

    * feat: add Object Edit Settings section with Object preview

    Closes twentyhq#3834

    * fix: fix preview card stories

    * test: improve getFieldDefaultPreviewValue tests

    * test: add getFieldPreviewValueFromRecord tests

    * test: add useFieldPreview tests

    * refactor: rename and move components

    * fix: restore RecordStoreDecorator

    * feat: adjust navigation drawer design (twentyhq#4242)

    Closes twentyhq#3969, Closes twentyhq#4240

    * test: improve utils coverage (twentyhq#4230)

    * test: improve utils coverage

    * refactor: review - rename isDefined to isNonNullable, update tests and return statement

    * [messaging] add better logs to messaging sync jobs (twentyhq#4245)

    * Handle multiple orderBy sorting (twentyhq#4246)

    Co-authored-by: Thomas Trompette <[email protected]>

    * Add export as csv (twentyhq#4034)

    * Add export as csv

    Resolves 2183.

    * collect over paginated data

    * refactor

    * add tests

    * parameterize pageSize (limit)

    * use pageInfo for onCompleted callback

    * json column variable naming

    * omit relations from csv exports

    * Expose releases as an api (twentyhq#4247)

    * Add error handling in GmailPartialSyncService (twentyhq#4248)

    * Add error handling in GmailPartialSyncService

    * improve typing

    * Enable new record board and messaging for all workspaces except demo (twentyhq#4243)

    * Enable new record board and messaging for all workspaces except demo

    * Fix according to PR

    * Added a 'Read documentation' button in the Developers tab in settings (twentyhq#4249)

    * Remove Gate decorator IS_BLOCKLIST_ENABLED from BlocklistObjectMetadata (twentyhq#4250)

    * Remove Gate decorator from BlocklistObjectMetadata

    * check if blocklist is enabled

    * wip

    * done

    * Fix enum defaultValue broken (twentyhq#4251)

    * Fix enum defaultValue broken

    * Fix

    * Fix

    * Fix default value being set to null when not provider to fieldMetadataUpdate

    * Fix blocklist standard object being unhealthy (twentyhq#4255)

    Fix blocklist standard object unhealthy

    * Fix broken storybook tests on SettingsPreview

    * Handle error 429 during partial sync (twentyhq#4258)

    handle error 429

    * Improve website github sync (twentyhq#4259)

    * TWNTY-3942 - Enable Attachments on Custom Objects (twentyhq#4253)

    * Enable Attachments on Custom Objects

    Co-authored-by: v1b3m <[email protected]>

    * Revert changes to the client

    Co-authored-by: v1b3m <[email protected]>

    ---------

    Co-authored-by: gitstart-twenty <[email protected]>
    Co-authored-by: v1b3m <[email protected]>

    * 41 update subscription when workspace member changes 2 (twentyhq#4252)

    * Add loader and disabling on checkout button

    * Add Stripe Subscription Item id to subscriptionItem entity

    * Handle create and delete workspace members

    * Update billing webhook

    * Make stripe attribute private

    * Fixing webhook error

    * Clean migration

    * Cancel subscription when deleting workspace

    * Fix test

    * Add freetrial

    * Update navigate after signup

    * Add automatic tax collection

    ---------

    Co-authored-by: Swayam Vasavada <[email protected]>
    Co-authored-by: rostaklein <[email protected]>
    Co-authored-by: Jérémy M <[email protected]>
    Co-authored-by: Weiko <[email protected]>
    Co-authored-by: Charles Bochet <[email protected]>
    Co-authored-by: martmull <[email protected]>
    Co-authored-by: Charles Bochet <[email protected]>
    Co-authored-by: Thomas des Francs <[email protected]>
    Co-authored-by: brendanlaschke <[email protected]>
    Co-authored-by: Pranav <[email protected]>
    Co-authored-by: bosiraphael <[email protected]>
    Co-authored-by: Jonathanlemon <[email protected]>
    Co-authored-by: Félix Malfait <[email protected]>
    Co-authored-by: Kanav Arora <[email protected]>
    Co-authored-by: Lucas Bordeau <[email protected]>
    Co-authored-by: Zoltán Völcsey <[email protected]>
    Co-authored-by: Thaïs <[email protected]>
    Co-authored-by: Aditya Pimpalkar <[email protected]>
    Co-authored-by: Jeet Desai <[email protected]>
    Co-authored-by: Thomas Trompette <[email protected]>
    Co-authored-by: Thomas Trompette <[email protected]>
    Co-authored-by: Anoop P <[email protected]>
    Co-authored-by: Aayush-23 <[email protected]>
    Co-authored-by: Mohamed Houssein Douici <[email protected]>
    Co-authored-by: gitstart-app[bot] <57568882+gitstart-app[bot]@users.noreply.github.com>
    Co-authored-by: gitstart-twenty <[email protected]>
    Co-authored-by: Thiago Nascimbeni <[email protected]>
    Co-authored-by: v1b3m <[email protected]>
    Co-authored-by: KlingerMatheus <[email protected]>
    Co-authored-by: Abdullah <[email protected]>
    Co-authored-by: AutoComput <[email protected]>
    Co-authored-by: Sohal Kumar Singh <[email protected]>
    Co-authored-by: Elton Goh Jun Hao <[email protected]>
    Co-authored-by: Shreerang Patil <[email protected]>
    Co-authored-by: RubensRafael <[email protected]>
    Co-authored-by: Tate Thurston <[email protected]>
    Co-authored-by: Shubham Pawar <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants