* #3472 replace text input by texterarea
* background color change in dark mode
* box shadow and hide overflow
* added tooltip in overflow text
* resolved comment on #3473
* resolved comments in #3473
* feat: display label identifier table cell as chip with link to RecordShowPage
Closes#3502
* Fix test
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* feat: set field as custom object label identifier in Object Detail
Closes#3302
* feat: prevent disabling Object label identitifer field in back-end
* refactor: review - extract isLabelIdentifier variable
* fix: fix Relation field optimistic effect on Record update
Related to #3099
* Fix lint
* Fix
* fix
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* feat: display identifier field in Object Detail page for custom objects
Closes#3301
* fix: show Name as object label identifier by default
* Minor improvements
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* feat: add link to relation filtered table in Record Show Page
Closes#3125
* refactor: use generateFindManyRecordsQuery for optimization
* Fixes from review
* Minor fixes
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* Use new ObjectRecordConnection
* Use new records without connection in GraphQLView
* Added playwright for storybook tests
* Fixed lint
* Fixed test and tsc
* Fixed storybook tests
* wip tests
* Added useMapConnectionToRecords unit test
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Migrate record table to scope map
* Update record scope id to record id
* Remove todos and fix edit mode
* Fix perf
* Fix tests
* Fix tests
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
* convert quick action into a dropdown
* GH-3183 import icons
* GH-3183 display dummy sub-actions in dropdown
* Migrate to new Dropdown API
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Fixed#3166
* refactor: improve generateEmptyFieldValue function
- Optimize handling of MultiSelect and Select cases
- Provide a default value for Select based on FieldSelectValue
- Enhance code readability and maintainability
* Fixed#3166
- Introduce MultiSelect-specific logic with a backend support check
- Implement Select-specific logic with a default value
- Throw an error for unhandled FieldMetadataType
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
* 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>
* Added sortFields function and used on active and disabled metadataFields
* Added a sortFieldMetadataItem and used parseDate instead of vanila Date
* Added tests for sortFieldMetadataItem (#3253)
* Applied sortFieldMetadataItem (#3253)
* Migrate tab list to scope map
* Return state to hook and let client subscribe to state
* Run prettier
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com>
* Delete record if no company added
* EditMode on First column of new row added
* Fix
* Minor fixes
* Passed scopeId
* Changed FieldInputs to accept onChange handler
* Removed getFieldType
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* fix side nav for short viewports
* remove uneeded justify-content in leu of overflow-y addition
* undo last commit to leave justify-content in for submenus
* move overflow-y to StyledContainer
* move overflow-y to items container
* remove problematic overflow to allow scrollable nav sections
* style update
* inlcude box as a table element
* Ui
Loading more fixed
* changes
tbody added with ref
with margin and padding with theme variables
* Remove unused react fragment
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* WIP
* Finished cleaning favorites create, update, delete on record show page
* Fixed context menu favorite
* Fixed relation field bug
* Fix from review
* Review
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Added a clear/reset button in InternalDateInput to reset/unschedule events
* Added clearable prop to <InternalDateInput /> and fixed some design mistakes
* Removed unnecessary code that was used during debugging
* Replaced button with <MenuItem /> component
* Fixed null date in ObjectFilterDropdownDateSearchInput
* Moved clear context call from DateInput to DateFieldInput
* Removed useless props
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* Issue#3150 - Esc and clickOutside will close Searchbox
* Font size, margin + 'esc' only
Font size changed to theme specific, have a handsome margin to the top right of search box for text "Esc to cancel". Passing 'esc' only to escape.
* Updated the color theme of icon in Data Model Settings table
* add the sm stroke to icon
* add the sm stroke to icon
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* GH-3106 fix activity drawer opener for selected rows hook
* GH-3106 ability to multi note/task with action bar
* GH-3106 use snapshot to get selected row IDs
* GH-3106 format code & fix linting issues
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* fix: On Sign Out > Sign In, States are not loaded properly
* draft: reset on logout
* chore: lint
* chore: lint
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* 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
* fix: display label identifier field input in Show Page
Fixes#3003
* Cleaned a bit after comments
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* - upload image to use in blocknote editor
- fix local-storage not in gitignore
* fix lint
* fix runtime config
add tests for body parsing notes and tasks
* lint
* fix: empty state should not appear during table loading
* feat: add initla load tracking
* Fix lint
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* wip
* trying to parse display names and emails
* add nodemailer mailparser
* mail parsing is working
* add personId and workspaceMemberId
* add date to messages
* Fix PR
* Run tsc on bigger machine
* Fix lint
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* feat: add Settings/Accounts/New section with empty state
* fix: added label for Empty State Card
* On RecordTable, if I have no records, the Record Table Layout is not broken (#2911)
* On RecordTable, if I have no records, the Record Table Layout is not broken
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Revert scrollbar changes
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* fix + button
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Revert unwanted changes
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Merge main
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* On RecordTable, if I have no records, the Record Table Layout is not broken
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Add bottom border
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Always show + button
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Refactor according to review
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
* Fix according to PR
---------
Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
* Add jest tests for twenty-front (#2983)
* Add jest tests for twenty-front
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
* Fix tests
---------
Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
* feat: select default Unit for Currency field (#2996)
Closes#2347
Co-authored-by: Thais GUIGON <thaisguigon@macbook-pro.home>
* Remaining UI docs (#2997)
* remaining UI docs
* completed ui component docs
---------
Co-authored-by: Charles Bochet <charles@twenty.com>
* Fix CIs (#3004)
* Fix CIs
* Fix docs
* Fix eslint-build
* Move file
* Move back
* Fix server ci
* Fix server ci
* Fix server ci
* Fix server ci
* Deactivate e2e tests
* Fix front
* Fix front
* Fix front
* Add twenty-zapier and twenty-utils to the yarn project
* fix
* fix
* Remove pull_request trigger
* Fix ExceptionHandler requiring httpAdapter (#3021)
* Disable chromatic CI
* Disable Danger CI on push trigger (#3024)
Disable Danger CI on main
* feat: add Show Page Emails tab (#2962)
* feat: add Show Page Emails tab
Closes#2926, Closes#2927
* feat: review - disable Emails tab if messaging not enabled
* refactor: review - add FeatureFlagKey type
---------
Co-authored-by: Thais GUIGON <thaisguigon@macbook-pro.home>
* 2880 timebox create a poc to fetch emails from the gmail api (#2993)
* create empty service
* getting threads is working
* insert message channel
* save threads in the db
* clean
* fetch messages
* create a service to fetch a batch of messages
* batch messages
* use httpService instead
* parse batch
* base 64 decoding working
* solve parsing bug
* saving messages is working
* bug to fix in fetchAllByBatches
* fetching all messages is working but not saving yet
* fecth 500 messages and threads is working
* remove unused package and console log
* set direction to incoming
* fix bug after merging main
* Fix modified files DangerCI (#3025)
- fix modified files
* feat: add Show Page Emails preview (#2964)
* feat: add Show Page Emails preview
Closes#2928
* refactor: review - rename StyledContainer to StyledCardContent
* 2915 rest api documentation (#3020)
* Init rest-api page
* Add ugly form to fetch open api schema
* Clean code
* Make the form design more acceptable
* Update doc
* Use local storage
* Update design
* Add isLoading
* Fix typo
* Fix long lines
* Code review returns
* Remove staging and local url from servers
* 2982-feat: Clear SelectableList reset scoped state (#2987)
* 2982-feat: Clear SelectableList reset scoped state
* State fixes as suggested in pr
* State fixes as suggested in pr
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
* Fix docusaurus style overriden by spotlight/element (rest api playground) (#3033)
* Fix docusaurus style overriden by spotlight/element (rest api playground)
* Fix spacing
* Fix spacing
* Fix: keep the filter edition open if it is empty (#2986)
Co-authored-by: 曹志浩 <caozhihao@quyiyuan.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
---------
Co-authored-by: Lakshay saini <lakshay.saini@finmo.net>
Co-authored-by: gitstart-twenty <140154534+gitstart-twenty@users.noreply.github.com>
Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: v1b3m <vibenjamin6@gmail.com>
Co-authored-by: RubensRafael <rubensrafael2@live.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
Co-authored-by: Thiago Nascimbeni <tnascimbeni@gmail.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: Thaïs <guigon.thais@gmail.com>
Co-authored-by: Thais GUIGON <thaisguigon@macbook-pro.home>
Co-authored-by: Nimra Ahmed <50912134+nimraahmed@users.noreply.github.com>
Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com>
Co-authored-by: bosiraphael <71827178+bosiraphael@users.noreply.github.com>
Co-authored-by: brendanlaschke <brendan.laschke@googlemail.com>
Co-authored-by: martmull <martmull@hotmail.fr>
Co-authored-by: Kanav Arora <kanavarora1515@gmail.com>
Co-authored-by: Cao Z.H <150761799+CzhCN0@users.noreply.github.com>
Co-authored-by: 曹志浩 <caozhihao@quyiyuan.com>
* Add Enrich to frontend
* Naive backend implementation
* Add work email check
* Rename Enrich to Quick Action
* Refactor logic to a separate service
* Refacto to separate IntelligenceService
* Small fixes
* Missing Break statement
* Address PR comments
* Create company interface
* Improve edge case handling
* Use httpService instead of Axios
* Fix server tests
* Add feature flag key for select and rating
* Use feature flag boolean to decide if select & rating are enabled
* Enable select and rating in demo & core
* 2982-feat: Clear SelectableList reset scoped state
* State fixes as suggested in pr
* State fixes as suggested in pr
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
* Fix CIs
* Fix docs
* Fix eslint-build
* Move file
* Move back
* Fix server ci
* Fix server ci
* Fix server ci
* Fix server ci
* Deactivate e2e tests
* Fix front
* Fix front
* Fix front
* Add twenty-zapier and twenty-utils to the yarn project
* fix
* fix
* Remove pull_request trigger
* 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>