Commit Graph

3963 Commits

Author SHA1 Message Date
b4412ab3c8 Fix workflow id not being set (#10989)
The workflow id was not set inside `WorkflowRunVisualizerEffect` and
`WorkflowVersionVisualizerEffect` this PR fixes this
2025-03-18 17:00:56 +01:00
2680f1d6be 583 refactor useCommandMenu hook (#10984)
Closes https://github.com/twentyhq/core-team-issues/issues/583

- Split hook into smaller hooks
- Create tests
2025-03-18 15:37:28 +01:00
324794707a i18n - translations (#10988)
Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-18 15:34:51 +01:00
0e8d5728b0 Fix permissionAssignment dropdownMenu max height (#10987)
HasMaxHeight prop was missing in the dropdown container so the content
was not scrollable

Before
<img width="692" alt="Screenshot 2025-03-18 at 15 18 08"
src="https://github.com/user-attachments/assets/5ab8fd70-5528-4cf8-a526-38afdae1f502"
/>

After
<img width="703" alt="Screenshot 2025-03-18 at 15 17 59"
src="https://github.com/user-attachments/assets/5bbf4347-c963-4785-948c-8e16272bf067"
/>
2025-03-18 15:29:05 +01:00
38c6222422 i18n - translations (#10986)
Created by Github action

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-18 15:20:19 +01:00
eb73838e5d Fix yarn lock (#10985) 2025-03-18 14:57:06 +01:00
1bd3000b5d Investigate workflow user error (#10952)
Investigation related to https://github.com/twentyhq/twenty/issues/10868

- throw an error when computedVersion is undefined
2025-03-18 14:24:21 +01:00
a73b440646 i18n - translations (#10980)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-18 14:23:52 +01:00
291d6082c9 refactor(captcha): simplify interval handling in hook (#10974)
Close #10708

---------

Co-authored-by: Félix Malfait <felix@twenty.com>
2025-03-18 13:23:31 +00:00
6255207aa3 Command menu overflow ellipsis (#10977)
Fixes https://github.com/twentyhq/core-team-issues/issues/579
2025-03-18 13:21:47 +00:00
be1b877868 Add empty states to settings tables (#10978)
## Context
Fixes https://github.com/twentyhq/twenty/issues/10964

## Test
<img width="617" alt="Screenshot 2025-03-18 at 12 18 30"
src="https://github.com/user-attachments/assets/dab8738d-d221-4a6b-a72e-061ab5fffb70"
/>
<img width="647" alt="Screenshot 2025-03-18 at 12 18 25"
src="https://github.com/user-attachments/assets/45466a80-7a80-4cde-a0c5-420cd6c05cb2"
/>
<img width="637" alt="Screenshot 2025-03-18 at 12 18 19"
src="https://github.com/user-attachments/assets/46a9f27a-bd3a-4e91-9885-668cf780d562"
/>
<img width="630" alt="Screenshot 2025-03-18 at 12 18 07"
src="https://github.com/user-attachments/assets/e1f805a0-ed7f-4cf2-8f75-78b865bd1ca2"
/>
<img width="649" alt="Screenshot 2025-03-18 at 12 18 01"
src="https://github.com/user-attachments/assets/e9f3086f-fe97-4f3b-99e0-25249e9dd43b"
/>
2025-03-18 14:18:33 +01:00
ab9498b3de feat(workspace): delete custom domain on hard workspace delete (#10975)
Add logic to remove a workspace's custom domain during hard deletion.
Includes tests to verify behavior for both hard and soft deletion cases.

Fix #10351
2025-03-18 14:06:24 +01:00
f5195433f3 Configure Keystatic for release images (#10889)
- Add validation for the `release` field of the releases collection
  - The `release` must follow semver format
- The `slug` matches the `release` by default and must follow semver
format, too
- Order the releases properly
- `0.10.0` appears before `0.3.0`; I made the comparison against
`0000.0010.0000` and `0000.0003.0000`
- Set up images for release's contents
- Refactor the release notes of the version `0.43.0` to be editable in
Keystatic; it will serve as an example

## Demo



https://github.com/user-attachments/assets/d82851e9-11e7-4e27-b645-cf86a93d77bf
2025-03-18 12:45:51 +01:00
eb5fb51c1b Animate the opening and exiting states of the JSON visualizer (#10965)
I used `overflow-y: clip` instead of `overflow-y: hidden` because of
this behavior:

> Setting overflow to visible in one direction (i.e. overflow-x or
overflow-y) when it isn't set to visible or clip in the other direction
results in the visible value behaving as auto.


## Demo


https://github.com/user-attachments/assets/b7975c99-58cc-4b63-b420-a54b27752188

Closes https://github.com/twentyhq/core-team-issues/issues/562
2025-03-18 12:05:10 +01:00
0f85d5b94b fix: attachment scroll issue in preview modal (#10925)
Fixes #10919

---------

Co-authored-by: ehconitin <nitinkoche03@gmail.com>
Co-authored-by: Félix Malfait <felix@twenty.com>
2025-03-18 10:47:11 +01:00
aa6fd90424 Create objectPermissions and settingsPermissions tables (#10962)
Closes https://github.com/twentyhq/core-team-issues/issues/594
2025-03-18 10:45:31 +01:00
606098fef6 refacto(twenty-front): improve DropdownMenuHeader api (#10961) 2025-03-18 08:19:22 +01:00
38dabc9f84 [fix] Users with readOnly permissions should not be able to edit richtext fields (#10959)
Before
<img width="1024" alt="Screenshot 2025-03-17 at 17 46 34"
src="https://github.com/user-attachments/assets/c754adfb-4197-4be8-95dc-2f2024ed8a5c"
/>


After
<img width="954" alt="Screenshot 2025-03-17 at 17 46 20"
src="https://github.com/user-attachments/assets/e6063990-5d30-416f-9d16-2974d8d1d831"
/>
2025-03-17 19:03:43 +01:00
c9a48c0ba9 0.44 changelog (#10963)
Co-authored-by: Guillim <guillim@users.noreply.github.com>
2025-03-17 17:42:07 +00:00
79af21ef59 i18n - translations (#10957)
Created by Github action

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 17:21:20 +01:00
2be26ecc98 add temporary log to investigate on deletion logic (#10955)
related to
[611](https://github.com/twentyhq/core-team-issues/issues/611)
2025-03-17 17:13:01 +01:00
b4ec00088b i18n - translations (#10953)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 16:46:03 +01:00
bda835b9f8 feat(twenty-front/workspace-menu): improve workspace menu (#10642)
New workspace menu
2025-03-17 15:31:31 +00:00
78b3b7edab i18n - translations (#10951)
Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 16:20:44 +01:00
8db8d9ad00 feat(twenty-front): improve dropdown menu header (#10672) 2025-03-17 16:10:52 +01:00
c4efb45f04 i18n - translations (#10950)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 16:01:03 +01:00
093d6c0a1a Extract the JSON visualizer component in twenty-ui (#10937)
- Move the JsonTree component and the other components to twenty-ui
- Rely on a React Context to provide translations

## Future work

It would be good to migrate the `createRequiredContext` function to
`twenty-ui`. I didn't want to migrate it in this PR but would have liked
to use it.
2025-03-17 15:00:06 +00:00
428499e222 598 remove favorites actions from pinned actions on workflows and add see runs (#10946)
Closes https://github.com/twentyhq/core-team-issues/issues/598
- Add export single run action
- Add export single version action
2025-03-17 15:45:20 +01:00
a2ea831b9b i18n - translations (#10949)
Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 15:34:42 +01:00
8b5d5b35ad Workspace seeders with version (#10895)
# Introduction
close https://github.com/twentyhq/core-team-issues/issues/487
Updated the seeders to infer the workspace's version from the
`APP_VERSION` env var

To test in local run: `npx nx database:reset twenty-server` with either
a defined or not defined `APP_VERSION` in your `.env`
( note that invalid semver values will throw an error and stop the
process ) ( valid version ex: `APP_VERSION=1.0.0`)
2025-03-17 15:32:49 +01:00
3e3e8de400 i18n - translations (#10948)
Created by Github action

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 15:20:27 +01:00
20080256dc i18n - translations (#10940)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 14:12:43 +01:00
d01023dfe7 update connected account health status descriptions (#10935)
<img width="694" alt="Screenshot 2025-03-17 at 15 36 03"
src="https://github.com/user-attachments/assets/de43d463-d4c1-421a-be1b-947f247ceb94"
/>
2025-03-17 13:01:55 +00:00
7ff2fccd5b i18n - translations (#10939)
Created by Github action

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 13:22:36 +01:00
b99e71c37a i18n - translations (#10938)
Created by Github action

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 13:11:21 +01:00
35119bceaa i18n - translations (#10936)
Created by Github action

---------

Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 11:35:34 +01:00
d51df80c13 fix: add icon for code block (#10924)
Fixes #10923

<img width="422" alt="Screenshot 2025-03-16 at 1 44 51 AM"
src="https://github.com/user-attachments/assets/e8b638ce-0082-486a-92c0-f362dcf25f98"
/>

Co-authored-by: Weiko <corentin@twenty.com>
2025-03-17 11:32:42 +01:00
37599af882 Fix unknown labe (#10934)
## Before

![image](https://github.com/user-attachments/assets/20b5d5c7-907e-4293-a8db-034125e0f4b4)

## After

![image](https://github.com/user-attachments/assets/1df6d597-f06e-49e4-a9a4-ad980f42b07b)
2025-03-17 11:25:13 +01:00
e49ba69f19 i18n - translations (#10933)
Created by Github action

---------

Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions <github-actions@twenty.com>
2025-03-17 11:20:51 +01:00
bd7e7713e8 fix workflow view not visible (#10918)
fixes: #10913

1. Original issue:
```typescript
<StyledTabListContainer shouldDisplay={visibleTabs.length > 1}>
  <StyledTabList />
</StyledTabListContainer>
```

TabList wasn't getting full width.

2. First fix attempt ie #10904:
```typescript
{visibleTabs.length > 1 && (
  <StyledTabList />
)}
```
This broke workflow views because:
Workflows use single-tab layouts
The conditional rendering prevented the tab from showing at all when
visibleTabs.length <= 1


3. Current working solution:
```typescript
const StyledOuterContainer = styled.div`
  width: 100%;
`;

<StyledTabListContainer shouldDisplay={visibleTabs.length > 1}>
  <StyledOuterContainer>
    <StyledTabList />
  </StyledOuterContainer>
</StyledTabListContainer>
```
This works because:
Keeps the original display logic that supports single-tab workflows
Fixes the width issue with the new container
Maintains tab state management needed for workflow visualization
2025-03-17 10:27:23 +01:00
d0c31d3f71 Fix missing translations for advanced mode toggle (#10931)
Advanced mode toggle was in `twenty-ui` which doesn't support Lingui.

I removed lingui from the global package json and moved it to the local
package.json instead to prevent that kind of error from happening again
2025-03-17 10:09:07 +01:00
fb1e674781 Add ids to translations to make it easier to debug (#10930)
As per title
2025-03-17 09:15:54 +01:00
23b4605987 [REFACTOR] Workspace version only x.y.z (#10910)
# Introduction
We want the APP_VERSION to be able to contains pre-release options, in a
nutshell to be semVer compatible.
But we want to have workspace, at least for the moment, that only store
`x.y.z` and not `vx.y.z` or `x.y.z-alpha` version in database

Explaining this refactor

Related https://github.com/twentyhq/twenty/pull/10907
2025-03-14 19:21:44 +01:00
3988eb7787 Fix missing fields in filter on index board (#10909)
Fixes https://github.com/twentyhq/twenty/issues/10046
2025-03-14 19:13:44 +01:00
d0e80a5ba2 [Fix] Class validator native isSemver does not handle v-prefix (#10907)
# Introduction
Under the hood class-validator isSemver uses
https://github.com/validatorjs/validator.js/blob/master/src/lib/isSemVer.js
which does not cover all semVer use cases

## Even tho
Had a discussion with @charles was about to store in db ws version as
`vx.y.z`. We felt like we wanted it to be stored as `x.y.z`, in my
opinion `APP_VERSION` should reflect the tag used to be build the
instance and not be updated
But we could extract only `x.y.z` from it at runtime

Also handling the `v` extraction in CD is IMO not the most reliable

## Env var logging refactor
Now not stopping on first error log
```ts
Successfully compiled: 2128 files with swc (185.34ms)
Watching for file changes.
[Nest] 52686  - 03/14/2025, 6:28:33 PM   ERROR PG_DATABASE_URL should not be null or undefined
PG_DATABASE_URL must be a URL address
[Nest] 52686  - 03/14/2025, 6:28:33 PM   ERROR APP_VERSION must be a valid semantic version (e.g., 1.0.0)

/Users/paulrastoin/ws/twenty/packages/twenty-server/src/engine/core-modules/environment/environment-variables.ts:1019
    throw new Error("Environment variables validation failed")
          ^
Error: Environment variables validation failed
    at Object.validate (/Users/paulrastoin/ws/twenty/packages/twenty-server/src/engine/core-modules/environment/environment-variables.ts:1019:11)
    at Function.forRoot (/Users/paulrastoin/ws/twenty/node_modules/@nestjs/config/dist/config.module.js:67:45)
    at Object.<anonymous> (/Users/paulrastoin/ws/twenty/packages/twenty-server/src/engine/core-modules/environment/environment.module.ts:11:18)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Function.Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:121:18)
    at Object.<anonymous> (/Users/paulrastoin/ws/twenty/packages/twenty-server/dist/src/database/typeorm/typeorm.module.js:14:28)
```
2025-03-14 18:00:03 +00:00
ef251f8129 Set attachment authorId nullable (#10908)
## Context
This should fix workspaceMember deletion when attachments exist.
Attachment should still be available even if its author leaves the
workspace. Currently the author is never displayed in the product.

<img width="936" alt="Screenshot 2025-03-14 at 18 46 49"
src="https://github.com/user-attachments/assets/30f85505-11d9-4190-9b9e-2f9a433e5da1"
/>
<img width="953" alt="Screenshot 2025-03-14 at 18 46 25"
src="https://github.com/user-attachments/assets/6a8da47d-70ed-420d-9e18-76f5d901a909"
/>
2025-03-14 18:49:31 +01:00
7595d42fef fix: added server preconnect url improving the page load time (#10554)
fixes #10236
2025-03-14 18:35:06 +01:00
5b7b58c85f Remove dead code about workflow leaf nodes (#10901)
Leaf nodes is no longer a concept in the workflow diagrams. This PR
removes dead code.

Closes https://github.com/twentyhq/core-team-issues/issues/386
2025-03-14 18:33:19 +01:00
1bc30e9b21 Side panel tablist fix (#10904)
followup #10832
whats wrong? -- in "before" screen grabs, the light bottom border
doesn't go all the way!

fix -- removed the redundant div :)

(╯°□°)╯︵ ┻━┻

before:
<img width="608" alt="Screenshot 2025-03-14 at 22 26 26"
src="https://github.com/user-attachments/assets/4fff92f7-5adc-4816-95dc-7b78ad08cd1c"
/>
<img width="605" alt="Screenshot 2025-03-14 at 22 26 20"
src="https://github.com/user-attachments/assets/e7a796a3-d5ff-4366-bd45-afbe3a219ee5"
/>
after:
<img width="610" alt="Screenshot 2025-03-14 at 22 24 33"
src="https://github.com/user-attachments/assets/c6f744b8-ec8b-4549-a1bb-db1a9fd1fafe"
/>
<img width="603" alt="Screenshot 2025-03-14 at 22 24 24"
src="https://github.com/user-attachments/assets/4758a591-3375-4387-a115-c74d534decb6"
/>
2025-03-14 18:32:46 +01:00
f44f42e9a0 Advanced toggle alignment (#10844)
This PR address advanced toggle alignment, especially the left yellow
dot placement.
In other advanced settings navigation drawer, the dot appears -20px to
left, while this was not the case for advanced toggle's dot.
Matched the height and paddings to that of NavigationDrawerItem.

@Bonapara FYI

before:
<img width="399" alt="Screenshot 2025-03-13 at 15 49 21"
src="https://github.com/user-attachments/assets/6dd60b3a-1b2e-43a0-ad28-dc44437460ab"
/>

after:
<img width="401" alt="Screenshot 2025-03-13 at 15 47 43"
src="https://github.com/user-attachments/assets/86e51b07-e84a-413a-8a49-1820c165dc68"
/>

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2025-03-14 18:28:14 +01:00