+22
19b7ab57b9
Feature - HTTP request node ( #12509 )
...
Closes [#1072 ](https://github.com/twentyhq/core-team-issues/issues/1072 )
https://github.com/user-attachments/assets/adff3474-6ec3-4369-a0c8-fb4be7defe85
---------
Co-authored-by: Raphaël Bosi <71827178+bosiraphael@users.noreply.github.com >
Co-authored-by: etiennejouan <jouan.etienne@gmail.com >
Co-authored-by: Guillim <guillim@users.noreply.github.com >
Co-authored-by: guillim <guigloo@msn.com >
Co-authored-by: prastoin <paul@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
Co-authored-by: Thomas des Francs <tdesfrancs@gmail.com >
Co-authored-by: martmull <martmull@hotmail.fr >
Co-authored-by: nitin <142569587+ehconitin@users.noreply.github.com >
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
Co-authored-by: Félix Malfait <felix@twenty.com >
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Marie <51697796+ijreilly@users.noreply.github.com >
Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com >
Co-authored-by: Jordan Chalupka <9794216+jordan-chalupka@users.noreply.github.com >
Co-authored-by: Thomas Trompette <thomas.trompette@sfr.fr >
Co-authored-by: jaspass04 <147055860+jaspass04@users.noreply.github.com >
Co-authored-by: Etienne <45695613+etiennejouan@users.noreply.github.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@twenty.com >
Co-authored-by: Weiko <corentin@twenty.com >
Co-authored-by: Matt Dvertola <64113801+mdvertola@users.noreply.github.com >
Co-authored-by: Zeroday BYTE <github@zerodaysec.org >
Co-authored-by: Naifer <161821705+omarNaifer12@users.noreply.github.com >
Co-authored-by: Karuna Tata <karuna.tata@devrev.ai >
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
Co-authored-by: Ajay A Adsule <103304466+AjayAdsule@users.noreply.github.com >
Co-authored-by: Baptiste Devessier <baptiste@devessier.fr >
Co-authored-by: oliver <8559757+oliverqx@users.noreply.github.com >
Co-authored-by: Ahmad Zaheer <55204917+ahmadzaheer-dev@users.noreply.github.com >
Co-authored-by: Paul Rastoin <45004772+prastoin@users.noreply.github.com >
2025-06-13 13:41:22 +02:00
Abdul Rahman
1f2c40af61
fix: prevent duplicate dropdowns in activity targets when editing in different contexts ( #12462 )
...
Closes #12361
### Changes Made
- In `ActivityTargetsInlineCell`, we now use different component
instance IDs based on context. This ensures that each instance of the
component (whether in right drawer or main view) has its own isolated
state, preventing state conflicts and duplicate dropdowns.
- The `MultipleRecordPicker` component now properly resets its state
when closed, preventing state leakage between instances.
https://github.com/user-attachments/assets/deb99687-a803-417e-a339-cab061026739
2025-06-09 15:20:13 +02:00
+11
63c9af54f5
feat: implement TS vector search filter ( #12392 )
...
Closes #12427
This PR introduces a comprehensive search filter system that enhances
the application's data filtering capabilities. At its core, the
implementation leverages a custom useSearchFilter hook that manages
search state and operations, providing a consistent search experience
across different components. The search functionality is optimized for
performance through debounced operations (500ms) and efficient state
management using Recoil. Users can trigger search through keyboard
shortcuts (Ctrl/Cmd + F) or UI interactions, with the system maintaining
search state persistence and providing clear visual feedback. The
implementation integrates seamlessly with the existing record filtering
system, view bar components, and advanced filter system, while ensuring
good performance through optimized re-renders and component state
isolation.
https://github.com/user-attachments/assets/12936189-fba8-44b3-a30c-d8cb6d6bd514
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
Co-authored-by: Félix Malfait <felix@twenty.com >
Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
Co-authored-by: Marie <51697796+ijreilly@users.noreply.github.com >
Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com >
Co-authored-by: Jordan Chalupka <9794216+jordan-chalupka@users.noreply.github.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
Co-authored-by: Thomas Trompette <thomas.trompette@sfr.fr >
Co-authored-by: Guillim <guillim@users.noreply.github.com >
Co-authored-by: Raphaël Bosi <71827178+bosiraphael@users.noreply.github.com >
Co-authored-by: jaspass04 <147055860+jaspass04@users.noreply.github.com >
Co-authored-by: martmull <martmull@hotmail.fr >
Co-authored-by: Thomas des Francs <tdesfrancs@gmail.com >
Co-authored-by: Etienne <45695613+etiennejouan@users.noreply.github.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: github-actions <github-actions@twenty.com >
Co-authored-by: Weiko <corentin@twenty.com >
Co-authored-by: Matt Dvertola <64113801+mdvertola@users.noreply.github.com >
Co-authored-by: guillim <guigloo@msn.com >
Co-authored-by: Zeroday BYTE <github@zerodaysec.org >
2025-06-04 15:07:52 +02:00
eb7556e333
Fix: multi-select default values validation ( #12271 )
...
https://github.com/user-attachments/assets/3bea63cc-b098-4252-8787-fc6263f01e8d
Closes #12277
---------
Co-authored-by: prastoin <paul@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2025-06-03 15:01:58 +02:00
Abdul Rahman and etiennejouan
278a7baf5e
Feat: add support for day-first and year-first date formats (DD/MM/YYYY, YYYY/MM/DD) ( #12333 )
...
Closes #12152
https://github.com/user-attachments/assets/53640777-578f-4de8-a1f8-52d409a7582d
---------
Co-authored-by: etiennejouan <jouan.etienne@gmail.com >
2025-06-03 14:12:01 +02:00
c7139cbc84
feat: Add TS vector field filters support ( #12376 )
...
# Implementation Details
- Added support for 5 operators: `contains`, `containsAny`,
`containsAll`, `matches`, and `fuzzy`
- Works on any field of type `TS_VECTOR`
- Added PostgreSQL `pg_trgm` extension for fuzzy search functionality.
The extension provides the `similarity()` function needed for text
similarity searches.
- Not implemented in GraphQL
## Tradeoffs & Decisions
1. **Fuzzy Search Performance**: Using `pg_trgm` for fuzzy search is
more accurate but slower than simple text matching. We might want to add
a similarity threshold parameter in the future to control the tradeoff
between accuracy and performance.
2. **Operator Naming**: Chose `contains`/`containsAny`/`containsAll` to
be consistent with existing filter operators, though they might be less
intuitive than `search`/`searchAny`/`searchAll`.
## Demo
https://github.com/user-attachments/assets/790fc3ed-a188-4b49-864f-996a37481d99
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
Co-authored-by: Félix Malfait <felix@twenty.com >
2025-05-30 15:54:50 +02:00
Abdul Rahman and martmull
af5762c8ba
Infinite scrolling in relation picker menu ( #12051 )
...
https://github.com/user-attachments/assets/4be785e0-ea8a-4c8e-840e-6fa0a663d7ba
Closes #11938
---------
Co-authored-by: martmull <martmull@hotmail.fr >
2025-05-23 17:23:09 +02:00
Abdul Rahman
c6627f1e99
fix: prevent empty state from scrolling in table view ( #12197 )
...
https://github.com/user-attachments/assets/334ffd15-a639-4947-8142-c19bc231c9bd
Closes #12132
2025-05-22 11:59:32 +02:00
Abdul Rahman
503aeee81f
Fix/record board keyboard navigation empty columns ( #12103 )
...
https://github.com/user-attachments/assets/6830217b-28a9-46e6-a9f5-40d508cd262b
Closes #12077
2025-05-19 23:22:56 +02:00
Abdul Rahman
42c69dd11a
fix: Ensure attachment modal appears above Command Menu button using createPortal ( #12112 )
...
<img width="1509" alt="Screenshot 2025-05-19 at 12 50 48 AM"
src="https://github.com/user-attachments/assets/fba95ecb-015a-4742-bda2-4d515d168c16 "
/>
Closes #12092
2025-05-19 23:08:31 +02:00
Abdul Rahman and Charles Bochet
85e2a2a92b
fix: prevent unwanted newlines in note editor when typing ( #12128 )
...
https://github.com/user-attachments/assets/16706d7a-fe0e-4979-bd72-00f4bfec594b
Closes #12119
---------
Co-authored-by: Charles Bochet <charlesBochet@users.noreply.github.com >
2025-05-19 22:43:49 +02:00
Abdul Rahman and Félix Malfait
1f4d4c5265
fix: z-index conflict between aggregate footer and cell popups ( #11973 )
...
https://github.com/user-attachments/assets/06f0e76f-69df-4a34-90ca-8d177744d89b
Closes #11956
---------
Co-authored-by: Félix Malfait <felix@twenty.com >
2025-05-11 12:24:49 +00:00
Abdul Rahman
ff4db92900
fix: flickering when updating relation counts ( #11943 )
...
https://github.com/user-attachments/assets/f5a87f1d-7c9f-4351-b43a-8b9b47715f94
Closes #11853
2025-05-09 08:28:20 +02:00
Abdul Rahman
1a761e39a9
Fix record name column overlapping table footer on horizontal scroll ( #11937 )
...
https://github.com/user-attachments/assets/0a119cc4-2085-4cec-967e-61827f938f24
Closes #11889
2025-05-08 15:16:22 +02:00
Abdul Rahman
b5bacbbd29
Disable Cell Hover Effect During Row Selection ( #11908 )
...
https://github.com/user-attachments/assets/925c02b7-6e34-4bb6-8f9e-2426de57088c
Closes #11878
2025-05-07 09:52:23 +02:00
ef8b015741
Allow moving columns left/right in Kanban view ( #11827 )
...
### Demo
https://github.com/user-attachments/assets/9bc81c33-454d-4581-b06e-dbc0ea79a8dd
Closes #11791
---------
Co-authored-by: prastoin <paul@twenty.com >
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2025-05-06 11:39:57 +02:00
Abdul Rahman and Félix Malfait
e5bfca2b1d
Fix crash when hiding a column in Kanban view ( #11847 )
...
### Problem
When hiding a kanban view column, users encountered the following error:
`Instance id is not provided and cannot be found in context.`
This was caused by the `SelectableListItem` for the "HiddenGroups" menu
item not being wrapped in a `SelectableList`. As a result, the required
context (specifically, the selectableListInstanceId) was missing,
leading to errors in recoil state management.
### Solution
This PR wraps the "HiddenGroups" `SelectableListItem` in its own
`SelectableList` component, providing the necessary context and ensuring
that the component family selectors work as expected.
https://github.com/user-attachments/assets/19e030d0-a28a-4993-b952-99d10b6e7a92
Closes #11828
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
2025-05-05 13:46:00 +02:00
Abdul Rahman
aa2b27dcbe
Fix unwanted right padding in Options view menu ( #11841 )
...
<img width="235" alt="Screenshot 2025-05-02 at 7 46 04 PM"
src="https://github.com/user-attachments/assets/94275278-ff14-44fd-a09a-776755ad1fa8 "
/>
Closes #11839
2025-05-02 16:51:15 +02:00
9df4778954
Fix: Reset password flow fails when user is signed in ( #11811 )
...
### Demo
https://github.com/user-attachments/assets/9589c7cc-f6ba-484a-b002-615c11a92729
Note: For the demo video, I hardcoded the email and manually set the
isTokenValid state to true.
Closes #11689
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
Co-authored-by: prastoin <paul@twenty.com >
2025-05-02 10:04:44 +02:00
Abdul Rahman
36ddf48ef0
Fix ⌘A selecting records instead of input text when creating a new view ( #11783 )
...
### Demo
https://github.com/user-attachments/assets/772e5b45-f55d-4d5f-9256-5a325b027d5d
Closes #11677
2025-04-30 09:40:25 +02:00
ea25498625
Fix dragging behavior below the last card when dragging below the new CTA button ( #11781 )
...
- Fixed an issue where dragging an item below the last card didn't work
when the card was dragged below the new CTA button (`destination.index
=== items.length` case).
- Moved the "new record" button outside of the draggable list
### Demo
https://github.com/user-attachments/assets/370f2c1f-4bb2-403b-b8ed-4afda064c98d
Closes #10197
---------
Co-authored-by: prastoin <paul@twenty.com >
Co-authored-by: Félix Malfait <felix@twenty.com >
2025-04-30 09:34:56 +02:00
Abdul Rahman
902cef78a1
Add Logout Confirmation Popup When Changing Workspace Subdomain ( #11756 )
...
This PR implements a confirmation popup on the Domain settings page when
a user attempts to save a subdomain change.
- When the user saves the updated subdomain, a confirmation modal is
shown.
- The modal informs the user that changing the subdomain will log them
and all other users out.
- If the user confirms, the subdomain change proceeds as normal.
- If the user cancels, the update is aborted and no changes are made.
### Demo
https://github.com/user-attachments/assets/dcea51c8-ffd2-40ca-bc75-0c0228df5344
Related Issue
Closes #11741
2025-04-27 18:47:06 +02:00