Commit Graph

1564 Commits

Author SHA1 Message Date
5384b4aba5 Fix record board export not taking filters into account (#8505)
Fix Export CSV action not taking into account the filters applied on the
Kanban index view
2024-11-14 23:28:53 +01:00
a799370483 Aggregated queries #1 (#8345)
First step of https://github.com/twentyhq/twenty/issues/6868

Adds min.., max.. queries for DATETIME fields
adds min.., max.., avg.., sum.. queries for NUMBER fields 

(count distinct operation and composite fields such as CURRENCY handling
will be dealt with in a future PR)

<img width="1422" alt="Capture d’écran 2024-11-06 à 15 48 46"
src="https://github.com/user-attachments/assets/4bcdece0-ad3e-4536-9720-fe4044a36719">

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
Co-authored-by: Weiko <corentin@twenty.com>
2024-11-14 18:05:05 +01:00
c966533f26 fix: search error in filter & sort dropdowns (#8493)
Fixes: #8483

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-14 17:51:54 +01:00
51c54d4c5b validation on Select field (#8316)
fix #8204
I changed "API keys" to "API values".
Stopped inputting special characters in Select field option keys.

@lucasbordeau please check the changes and tell me if I need to do any
other changes. :)

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-14 17:46:18 +01:00
15b8b9b158 Feature : Adding percentage option to Input Number (#8481)
fixing #7375

---------

Co-authored-by: guillim <guillaume@twenty.com>
2024-11-14 14:23:25 +01:00
9ac949dec8 [Workflow] Add search in variable dropdown (#8479)
- fix Icon variable Plus
- add search input 
- fix dropdown height

## Before

![image](https://github.com/user-attachments/assets/49f73efd-21cc-4ecd-a494-f51edc34dc57)


## After

![image](https://github.com/user-attachments/assets/2af2c7ee-72fd-4dae-a1ef-19e75e1ac026)
2024-11-14 11:40:06 +01:00
c98a8a2258 fix: dropdown toggle functionality (#8476)
Fixes: #8468
2024-11-13 19:36:21 +01:00
2fb920f68c Fix typo in branch name (#8480)
Fixes #8471 

Updated `0.33.0-canaray` -> `0.33.0-canary`

![CleanShot 2024-11-13 at 09 45
36](https://github.com/user-attachments/assets/6a365542-9b4d-4279-9ef4-966d22863eba)
2024-11-13 19:35:15 +01:00
795cb12a12 minor fix - spacing on Data model title fixed (#8467) 2024-11-13 19:34:15 +01:00
898006f89d Prevent automatic zoom when focusing inputs on iOS (#8477)
This is the result of a long discussion we had here:
https://github.com/twentyhq/twenty/issues/8001.

The goal is to stop iOS from automatically zooming when the user focuses
on an input whose font size is less than 16px.

The options were:

1. Disable zoom for all devices
2. Disable zoom for devices detected as iOS devices, which doesn't
prevent users from zooming manually but fixes the auto-zoom bug
3. Set the font size of the inputs to be equal to or greater than
16px—this change would take a lot of time

To me, the second option is the best, as iOS prevents developers from
disabling zoom. They saw that it was overused and chose to restrict this
setting. Setting a `maximum-scale` doesn't prevent users from zooming,
but it fixes the initial bug we had.

My implementation can be seen as [progressive
enhancement](https://developer.mozilla.org/en-US/docs/Glossary/Progressive_Enhancement
): If we can detect that the user uses an iOS device, we'll set the
`maximum-scale` viewport property. Relying on the user agent is always
unstable, and the check might fail unpredictably. We might not disallow
auto-zoom for some iOS devices.

However, I think we can either:

- Invest some time to choose a more reliable user detection pattern if
the one I suggest is not sufficient ([we find many different checks on
the
internet](https://stackoverflow.com/questions/9038625/detect-if-device-is-ios),
I'm not sure which one is the best)
- Choose to apply the viewport setting to all devices and remove the JS
code. According to my tests, it doesn't prevent zooming on desktops.
However, it does on Android phones. I think it's not lovely to disallow
zoom, but if the team agrees that we should go this way, I won't
disagree.

I know my JavaScript code does not follow a pattern we want to spread in
the app. The synchronous script will run as soon as possible to ensure
the viewport is correctly set when the website launches. This shouldn't
be an example followed by others.

Thanks, @harshit078, for your help in thinking about the best option.

I'm tagging @lucasbordeau and @charlesBochet for a technical review.

I would appreciate if someone could test on a more recent iOS device
than mine.

Here is a demonstration of the behavior on iOS:


https://github.com/user-attachments/assets/d49fb65f-dd76-455c-9ac0-d4c002a7fe89
2024-11-13 15:34:20 +01:00
ba79a1d324 Fix style (#8475)
## Before

![image](https://github.com/user-attachments/assets/1c96c30c-da06-4caa-a05d-1c58006dcfa5)

## After

![image](https://github.com/user-attachments/assets/523fac64-7521-4c0f-bfa8-457d48493628)
2024-11-13 13:32:40 +00:00
31f03764d6 Improve the layout of the Workflow Visualizer (#8372)
- Increase the dimensions of the ReactFlow nodes. This allows to ditch
scaling which made it hard to get the width of the nodes as they were
visually scaled by 1.3.
- Center the flow when the flow mounts and when the state of the right
drawer opens.
- Put the node type inside of the node so it doesn't overlap with the
arrow
- Make the edges non deletable

We'll have to make a refactor so the viewport can be animated properly:
https://github.com/twentyhq/twenty/issues/8387.


https://github.com/user-attachments/assets/69494a32-5403-4898-be75-7fc38058e263

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-12 17:52:12 +01:00
bec4da496d Data settings new layout - anchor navigation (#8334)
Follow-up of https://github.com/twentyhq/twenty/pull/7979
Navigation between settings and fields tabs is now reflected in URL. 
<img width="1106" alt="Capture d’écran 2024-11-07 à 18 38 57"
src="https://github.com/user-attachments/assets/24b153ef-9e68-4aa2-8e3a-6bf70834c5ad">

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: gitstart-twenty <140154534+gitstart-twenty@users.noreply.github.com>
Co-authored-by: Weiko <corentin@twenty.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-11-11 14:06:38 +01:00
9d6a850ee8 Mark main version as 0.33 canary (#8453) 2024-11-11 11:59:33 +01:00
29d92abaff fix: bookmarkIcon flash on hover exit (#8448)
Fixes: #8447

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-11 09:30:03 +01:00
c19e54f24b Hide tabs (#7841)
@FelixMalfait WDYT?
We can refactor shouldDisplay Files/Tasks/Notes Tab etc into a hook.

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-11 09:26:27 +01:00
6d62dd9fd1 fix: object activate dropdown (#8438)
Fixes: #8436 
Fixes: #8435 
& other duplicate ```DropdownMenu```
2024-11-11 09:26:07 +01:00
51d1305e27 fix: timeline padding (#8440)
Fixes: #8437

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-09 08:19:28 +01:00
8ee827d05d fix: Developers page dropdown not optimised for mobile viewport (#8392)
## Description

- This PR is a minor fix to issue #8379 
- Fixed dropdown for mobile viewports

## Changes


https://github.com/user-attachments/assets/76692233-996e-4a1a-884a-84d31464fc85
2024-11-09 07:59:15 +01:00
e3e638579b [FIX] Text overflow on timeline (#8325)
FIX: #6977 

Implementation:

1. Parent (Summary componenet) width is set to 100%. (dosen't grow even
if the child exceeds width)
2. span element is set to `text-overflow: ellipses` when overflown.

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-08 18:20:41 +00:00
6ec8a5b76e [FIX] slash-menu-height-fix (#8327)
FIX #8326 

I've used the `height: fit-content` property just for customSlashMenu
but I think it will work for all dropdown menu's.
I tested it for a few and works fine, but not sure for edge cases. 

Let me know if the height should be changed to `fir-content`


![image](https://github.com/user-attachments/assets/dacbedb5-08e0-4d08-8952-21d8b9de1176)

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-08 16:22:18 +00:00
354ee86cb9 8311 serverless function functions can be executed with any input (#8380)
- remove ts-morph
- update inputSchema shape

![image](https://github.com/user-attachments/assets/e62f3fdb-5be8-4666-8172-44f73a1981b9)


https://github.com/user-attachments/assets/913cd305-9e7c-48da-b20f-c974a8ac7cea

## TODO
- have inputTypes to match the inputSchema type (string, number,
boolean, etc...), only string for now
- handle required/optional inputs
- handle case when inputSchema changes, fix data reset when switching
function
2024-11-08 16:15:27 +00:00
0381996fb9 fix: dropdown menu doesn't close and remains open (#8302)
## Description

- Fixes #8285 
- Added fix for both Currency and PhoneCountry dropdown

## Changes



https://github.com/user-attachments/assets/cbf85100-7791-40da-a676-2c87c6a32976

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-08 16:13:15 +00:00
045f569d62 Fixed dropdown menu field settings (#8374)
2 dropdown menu components were used. Using only one and using dropdown
props for passing width to its internal dropdown menu component.
2024-11-08 17:11:37 +01:00
e8bf81de5b 8172 update the right drawer action menu to open with command o (#8375)
Closes #8172 

- Added a shortcut property to the button component
- Displays the actions inside a dropdown
- The dropdown is toggled either by clicking on the button or with the
`command + O` shortcut



https://github.com/user-attachments/assets/4c4c88fa-85dc-404e-bb42-f2b0d57c8960
2024-11-08 17:08:09 +01:00
5a53ef1ade Make filters work on export csv action (#8389)
- Create a new component state `contextStoreFiltersComponentState` and
refactor `contextStoreTargetedRecordsRuleComponentState`
- Refactor `computeContextStoreFilters` to use filters when no records
are selected
2024-11-08 15:38:45 +01:00
d44f7a46b6 fix: Misalignment and Excessive Padding in Relation Card (#8292)
## Description

- This PR solves the issue #8249 
- Maintained the overall padding, aligned content to left matching and
decreased Spacing between the card title and content should be smaller

## Changes

<img width="346" alt="Screenshot 2024-11-03 at 2 37 13 AM"
src="https://github.com/user-attachments/assets/91ba35bb-ff25-4001-af15-1fa10e5e1772">

---------

Co-authored-by: Thomas des Francs <tdesfrancs@gmail.com>
2024-11-08 14:10:15 +00:00
61cdc0e6da fix: kanban column margin should extend to bottom (#8394)
Fixes: #7868 

[Screencast from 2024-11-08
13-33-47.webm](https://github.com/user-attachments/assets/1de620d8-8f05-43f8-bde9-a2c9cbea4b9f)

---------

Co-authored-by: ehconitin <nitinkoche03@gmail.com>
2024-11-08 14:55:45 +01:00
aa270950d9 Make csv export unavailable when only one record is selected (#8409)
Make csv export unavailable when only one record is selected
2024-11-08 14:50:04 +01:00
f3e3c186dc Fix noninteractive toggle (#8383)
- Use a label to make the whole card interactive
- Disallow the Toggle component to shrink; it used to on mobile devices

A focus indicator is missing for the Toggle component. We'll have to add
one.
2024-11-08 12:42:15 +01:00
f06cdbdfc6 refactor webhookAnalytics call and enrich analytics module (#8253)
**TLDR**

Refactor WebhoonAnalytics Graph to a more abstract version
AnalyticsGraph (in analytics module). Thus enabling the components to be
used on different instances (ex: new endpoint, new kind of graph).

**In order to test:**

1. Set ANALYTICS_ENABLED to true
2. Set TINYBIRD_JWT_TOKEN to the ADMIN token from the workspace
twenty_analytics_playground
3. Set TINYBIRD_JWT_TOKEN to the datasource or your admin token from the
workspace twenty_analytics_playground
4. Create a Webhook in twenty and set wich events it needs to track
5. Run twenty-worker in order to make the webhooks work.
6. Do your tasks in order to populate the data
7. Enter to settings> webhook>your webhook and the statistics section
should be displayed.

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2024-11-08 10:00:51 +01:00
f9c076df31 o365 calendar sync (#8044)
Implemented:

* Account Connect
* Calendar sync via delta ids then requesting single events


I think I would split the messaging part into a second pr - that's a
step more complex then the calendar :)

---------

Co-authored-by: bosiraphael <raphael.bosi@gmail.com>
2024-11-07 18:13:22 +01:00
83f3963bfb Be able to specify front port (#8382)
- Added REACT_APP_PORT in front .env
- Use value if specified otherwise 3001 by default

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2024-11-07 18:11:51 +01:00
6264d509bd Migrate to twenty-ui - navigation/menu-item (#8213)
This PR was created by [GitStart](https://gitstart.com/) to address the
requirements from this ticket:
[TWNTY-7536](https://clients.gitstart.com/twenty/5449/tickets/TWNTY-7536).

 --- 

### Description

Migrate all menu items components to twenty ui and update imports.

```typescript
MenuItem
MenuItemAvata
MenuItemCommand
MenuItemCommandHotKeys
MenuItemDraggable
MenuItemMultiSelect
MenuItemMultiSelectAvatar
MenuItemMultiSelectTag
MenuItemNavigate
MenuItemSelect
MenuItemSelectAvatar
MenuItemSelectColor
MenuItemSelectTag
MenuItemSuggestion
MenuItemToggle
```

\
Also migrate all other dependent components and utilities like
`Checkbox` & `Toggle`\
\
Fixes twentyhq/private-issues#82

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: gitstart-twenty <140154534+gitstart-twenty@users.noreply.github.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-07 16:51:39 +00:00
ac233b771c Simplify multi-object picker logic with search (#8010)
Simplifying the logic around multi-object pickers and search by getting
rid of the behaviour that keeped selected elements even when they did
not match the search filter (eg keeping selected record "Brian Chesky"
in dropdown even when search input is "Qonto"). This allows us to
simplify the fetch queries around the search to only do one query.

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-07 17:09:19 +01:00
4f2b055ee0 fix: Minor bugs in UI (#7891)
## Description

- This PR fixed #7890

---------

Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-07 14:04:33 +00:00
60349d0989 Fix broken relation picker in Kanban (#8377)
Fixes https://github.com/twentyhq/twenty/issues/8233

Typing a search input was triggering a re-render of the whole
RecordBoardCard, resetting the search input to its initial value, an
empty string, making it impossible to actually type anything.
useRelationPicker had (legacy?) useless dependencies to recoil states
that caused the rerenders.
2024-11-07 13:55:21 +00:00
7bab65b569 Implement object fields and settings new layout (#7979)
### Description

- This PR has as the base branch the TWNTY-5491 branch, but we also had
to include updates from the main branch, and currently, there are
conflicts in the TWNTY-5491, that cause errors on typescript in this PR,
so, we can update once the conflicts are resolved on the base branch,
but the functionality can be reviewed anyway
- We Implemented a new layout of object details settings and new, the
data is auto-saved in `Settings `tab of object detail
- There is no indication to the user that data are saved automatically
in the design, currently we are disabling the form

### Demo\

<https://www.loom.com/share/4198c0aa54b5450780a570ceee574838?sid=b4ef0a42-2d41-435f-9f5f-1b16816939f7>

### Refs

#TWNTY-5491

---------

Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com>
Co-authored-by: gitstart-twenty <140154534+gitstart-twenty@users.noreply.github.com>
Co-authored-by: Marie Stoppa <marie.stoppa@essec.edu>
Co-authored-by: Weiko <corentin@twenty.com>
2024-11-07 14:50:53 +01:00
3be30651b7 fix : 7223 Clicking Outside Fields domain link email phone Close Them (#7804)
fixes #7223

https://github.com/user-attachments/assets/1150e96f-4fb5-40ba-ac17-89d8b2ab16e7
2024-11-07 12:40:28 +00:00
117e502e80 Clean available fields in variable dropdown (#8371)
As title

We do not want relations yet in picker
2024-11-06 16:54:23 +01:00
ffd790c8fd fix: don't use previous view group state when creating a new view (#8370)
When creating a new view we don't want to use view-groups from previous
view.
2024-11-06 16:33:51 +01:00
a6007d4376 Fix action menu dropdown (#8368)
Fix action menu dropdown not closing when clicking outside the table or
board and introduce helper functions to get the action menu component
ids.
2024-11-06 16:11:31 +01:00
24656e777e Fix : Enter hotKey issue onPress of ConfirmationModal (#7802)
**Description**

Fixes https://github.com/twentyhq/twenty/issues/7753
After entering proper value to input and pressing Enter, respective
action is being performed for all the popus.
This fix is is applicable to all the scenarios mentioned in
https://github.com/twentyhq/twenty/issues/6663 as well



https://github.com/user-attachments/assets/b7ed387f-1f36-4c93-b795-15a7b95c9958

Signed-off-by: Jayabharathi S <jayabharathi.s@thoughtworks.com>
Co-authored-by: Jayabharathi S <jayabharathi.s@thoughtworks.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-06 13:39:27 +00:00
b627c55b9a Add blue focus on text inputs (#8343)
We removed the blue focus on phone/domain/array/email floating inputs
but we want to keep it in the app settings.

<img width="644" alt="Screenshot 2024-11-05 at 15 55 04"
src="https://github.com/user-attachments/assets/afcbe6b2-2d6b-4e0d-8397-4268d529127c">
<img width="606" alt="Screenshot 2024-11-05 at 15 55 23"
src="https://github.com/user-attachments/assets/004becf8-41e7-45d6-9ad9-9e487b8db8f3">
<img width="351" alt="Screenshot 2024-11-05 at 15 55 33"
src="https://github.com/user-attachments/assets/6a4c06e6-04d3-46bf-940b-9fd61ee91995">
<img width="330" alt="Screenshot 2024-11-05 at 15 55 41"
src="https://github.com/user-attachments/assets/e6fc8bbd-eca3-47bc-93f1-d6ff8d3d8a13">
<img width="588" alt="Screenshot 2024-11-05 at 15 56 07"
src="https://github.com/user-attachments/assets/0d0f5e80-3501-4346-94a1-6ea4b77ee7ba">
<img width="211" alt="Screenshot 2024-11-05 at 15 56 31"
src="https://github.com/user-attachments/assets/9cd85f4d-8052-4c6b-a694-84c691c6217d">
2024-11-06 14:23:34 +01:00
5a293b8d60 Update menu title font size based on whether or not it's clickable (#8354)
Fixes #8350 

1. Summary

https://www.figma.com/design/xt8O9mFeLl46C5InWwoMrN/Twenty?node-id=36424-125120&node-type=instance&t=psxuagFLo1Cu26Vz-0

Based on Figma, the menu header should have `base/medium` instead of
`small/medium` when it's not clickable or dropdown. However, for
dropdowns, we should keep it as `small/medium`. Menu items should stay
as `base/regular`.

2. Solution
Utilized `onClick` prop to decide the font size of the menu header. That
way, Dropdowns stay as `base/small` while non-clickable headers are
updated to `base/medium`

3. Screenshots 
***please check out font size and weight for each case***

header: ![CleanShot 2024-11-05 at 17 45
23](https://github.com/user-attachments/assets/29bd6737-7470-452b-8483-a3adc9cd4db7)

menu item: ![CleanShot 2024-11-05 at 17 46
46](https://github.com/user-attachments/assets/4664156a-ad81-4437-ba71-51f88813dd88)

dropdown: ![CleanShot 2024-11-05 at 17 47
38](https://github.com/user-attachments/assets/c109f4cc-3a16-4c8a-9f4b-861138cc825a)
2024-11-06 14:08:29 +01:00
18d04de676 fix: RightDrawer doesn't save context values when clickedOutside (#7729)
## Description

- This PR fixes #7728 

## Changes


https://github.com/user-attachments/assets/1e66cab3-9009-4c01-9ac6-22651b0ff5e7

---------

Co-authored-by: bosiraphael <raphael.bosi@gmail.com>
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com>
2024-11-06 11:46:30 +01:00
7f51eb8c3c Add the possibility to run workflows with manual trigger from the command K with no records selected (#8342)
https://github.com/user-attachments/assets/9f094439-8d19-4a6b-883b-456294f691d8
2024-11-06 11:43:18 +01:00
ac7d740135 fix: when field metadata SELECT type is edited update view groups (#8344)
Co-authored-by: Charles Bochet <charles@twenty.com>
2024-11-06 11:41:44 +01:00
e36363fe15 Fix scroll wrapper (#8349)
Fixed scroll wrapper with conditionnal rendering
2024-11-06 10:05:17 +01:00
2d6b239da4 fix: Prevent isDisabled prop from passing to DOM in Settings/Security Link (#8317)
Fixes: #8297
2024-11-06 10:02:06 +01:00