Thomas Trompette
b006459e73
Sort create record action fields by view field position ( #9443 )
...
<img width="555" alt="Capture d’écran 2025-01-07 à 17 40 29"
src="https://github.com/user-attachments/assets/ac85a2d4-7867-4ae3-a639-16969a439d78 "
/>
<img width="1274" alt="Capture d’écran 2025-01-07 à 17 40 43"
src="https://github.com/user-attachments/assets/adfb793a-759c-4d4b-8672-79be1b4ad3fa "
/>
2025-01-07 16:58:58 +00:00
Thomas Trompette
5bd2154110
Add createdBy source for workflows ( #9342 )
...
Fix createdBy that is not displayed for workflows
<img width="1510" alt="Capture d’écran 2025-01-03 à 17 58 05"
src="https://github.com/user-attachments/assets/f2d4d7a9-466b-46e7-9d43-d55de88fb803 "
/>
2025-01-03 17:26:15 +00:00
Thomas Trompette
e87b2c9e33
Fix creation from empty state ( #9341 )
...
Invert logic of pending record creation
Fix https://github.com/twentyhq/twenty/issues/9338
2025-01-03 17:42:13 +01:00
Thomas Trompette
0674388426
Do not reset number on country change ( #9329 )
...
As title
2025-01-02 18:10:22 +00:00
Thomas Trompette
759dcfa910
Workflow phone number field ( #9324 )
...
Add phone number field
<img width="517" alt="Capture d’écran 2025-01-02 à 18 10 06"
src="https://github.com/user-attachments/assets/3c3ac7e6-a7fa-487b-820f-674d42217561 "
/>
2025-01-02 17:52:27 +00:00
Thomas Trompette
5da744ebc5
Continue workflow folders re-ordering ( #9315 )
...
- put actions in steps
- move hooks
- move states
2025-01-02 12:23:07 +00:00
Thomas Trompette
9e74ffae52
Refacto workflow folders ( #9302 )
...
- Create separated folders for sections
- Add components
- Add utils and clean old ones
- Add constants
- Rename search variables folder and components
Next steps:
- clean hooks
- clean states
2024-12-31 16:08:14 +00:00
Thomas Trompette and ehconitin
5bd685ef2a
Fix Navigation drawer design for object path ( #9290 )
...
Navigation drawer design is broken for object path, we always see
elipsis. Comes from the fact we only use padding 2px on right while
using 4px on the left.
<img width="242" alt="Capture d’écran 2024-12-31 à 08 27 11"
src="https://github.com/user-attachments/assets/bbc673f3-9c61-4df9-999e-d4a2d93276a9 "
/>
Using 2px padding only makes sense when there is a right element, to
match figma.
<img width="242" alt="Capture d’écran 2024-12-31 à 08 29 07"
src="https://github.com/user-attachments/assets/db5fe19c-5074-4f5c-a1b5-af183c0eb745 "
/>
Adding a condition to using 4px padding if no right element.
<img width="224" alt="Capture d’écran 2024-12-31 à 08 22 53"
src="https://github.com/user-attachments/assets/9909fd10-75a6-43ee-ae3d-c7124e5421b9 "
/>
Co-authored-by: ehconitin <nitinkoche03@gmail.com >
2024-12-31 09:24:06 +01:00
Thomas Trompette
c3c07e08c8
Fix use as draft redirection ( #9284 )
...
When hitting use as draft in workflow version action, redirects to
workflow newly created
2024-12-30 18:17:02 +01:00
Thomas Trompette
e153168edb
Fix go to draft link ( #9282 )
...
Redirect to workflow instead of version
2024-12-30 16:03:49 +00:00
Thomas Trompette
c52a4924b9
Add throttling on workflow execution ( #9263 )
...
We want to avoid infinite loops using workflows. Adding a throttler with
a limit of 10 executions / sec by default for each workflow.
We were not emitting events on workflow actions so loops could not
happen. Since throttler is there we can now and these.
Adding an error message so the user knows when it happens.
<img width="1284" alt="Capture d’écran 2024-12-27 à 17 05 20"
src="https://github.com/user-attachments/assets/dafa837b-5b4c-48be-8207-c90f5c71a236 "
/>
2024-12-30 10:52:33 +01:00
Thomas Trompette
58c92e036b
Add post hooks for workflow deletion ( #9258 )
...
Delete all workflow sub objects when workflow is deleted. Other sub
objects cannot be deleted otherwise.
We do not listen to deletion events so I am not adding them. Those post
hooks should be deleted Q1 once we properly handle cascade for soft
deletion
2024-12-27 13:40:19 +00:00
Thomas Trompette
a653488b17
Fix filter by url ( #9247 )
...
Filters coming from url should be parsed properly when using the new
relation schema format
2024-12-27 09:02:12 +00:00
Thomas Trompette
fdfa0935a1
Fix see versions and runs hooks ( #9244 )
...
<img width="871" alt="Capture d’écran 2024-12-26 à 15 04 27"
src="https://github.com/user-attachments/assets/40a37230-59be-4d9b-ae43-cebbf94e1b47 "
/>
Filters had been broken by this PR
https://github.com/twentyhq/twenty/commit/86d74724fb566138305a6c48c990730f0e5f8ee9#diff-eb3ca3591567c47e75165b8279bd2a51f8dd77810a643cba0d9c317d2f77107eR19
2024-12-26 15:40:31 +01:00
Thomas Trompette
f63b0a235a
Make record name editable on show page ( #9172 )
...
When fields are not displayed in show page, title should be editable
https://github.com/user-attachments/assets/049c2998-6944-46c7-9e9e-f6d29da06c6c
2024-12-26 10:59:17 +01:00
Thomas Trompette
53576245aa
Fix version creation / update when opening an action ( #9145 )
...
Actions using tiptap trigger updates when called.
Flow is following:
- component using tiptap receive default value
- we separate the default value because we need to add specific
attributes to the editor when inserting breaks or variables
- editor performs an update for each value
It means that initialize our editor performs several updates. We need to
avoid persisting until the init finished.
2024-12-19 13:19:25 +00:00
Thomas Trompette
32fef06734
Remove react hook form in send email action ( #9130 )
...
- remove react hook form
- put back multiline for body
2024-12-19 09:48:46 +00:00
Thomas Trompette
94676215ad
Add fields to update in update record action ( #9108 )
...
- update backend action so it handles composite fields
- add fields to update multiselect
- generate form based on that field
- add icons
2024-12-18 13:32:21 +00:00
Thomas Trompette
f0de1ab245
Add Multiselect for forms ( #9092 )
...
- Add new FormMultiSelectField component
- Factorize existing display / input into new ui components
- Update the variable resolver to handle arrays properly
<img width="526" alt="Capture d’écran 2024-12-17 à 11 46 38"
src="https://github.com/user-attachments/assets/6d37b513-8caa-43d0-a27e-ab55dac21f6d "
/>
2024-12-17 14:41:55 +01:00
Thomas Trompette
5961d26f91
Add email composite field ( #9061 )
...
Same as links, only adding primary email
2024-12-13 18:05:31 +01:00
Thomas Trompette
32e7eb79b9
Add links composite field ( #9059 )
...
- only primary links for now
- need for a global strat for validation. This will come later
2024-12-13 15:53:21 +00:00
Thomas Trompette
2990d23411
Fix composite field creation ( #9044 )
...
- composite field need to be formatted before being saved
- repository.create() does not do it. So we simply lose the composite
fields on the way
- save() does it directly and doing create() before does not change
anything
2024-12-12 16:34:56 +00:00
Thomas Trompette
4d9facb9bd
Add address composite form field ( #9022 )
...
- Create FormCountrySelectInput using the existing FormSelectFieldInput
- Create AddressFormFieldInput component
- Fix FormSelectFieldInput dropdown + add leftIcon
<img width="554" alt="Capture d’écran 2024-12-11 à 15 56 32"
src="https://github.com/user-attachments/assets/c3019f29-af76-44e1-96bd-a0c6283674e1 "
/>
2024-12-11 16:57:42 +00:00
Thomas Trompette
b6e02b630d
Add full name composite field ( #9008 )
...
- Add composite field
- Add test
- Fix search variable dropdown scroll
<img width="548" alt="Capture d’écran 2024-12-10 à 16 52 43"
src="https://github.com/user-attachments/assets/c337f0c3-8a70-401a-abd0-7206489ba73e ">
2024-12-10 16:29:55 +00:00
Thomas Trompette
e1a0259154
Split record crud actions ( #8930 )
...
Having a global record crud action adds complex logic.
We decided to split those actions. I only kept a common folder / module
in backend.
⚠️ this may break existing workflows if these were using previous
actions!
2024-12-06 16:58:57 +01:00
Thomas Trompette
5c565345ae
Add delete record action ( #8908 )
...
<img width="1272" alt="Capture d’écran 2024-12-05 à 18 04 19"
src="https://github.com/user-attachments/assets/dcbcc761-2f6d-4b6d-9e10-0f5b25d12c39 ">
- Adding new action
- Adding tests
- Moving into action folder
2024-12-06 13:02:17 +01:00
Thomas Trompette
36e4357bb1
Select full record in variable dropdown ( #8851 )
...
Output schema is now separated in two sections:
- object, that gather all informations on the selectable object
- fields, that display object fields in a record context, or simply the
available fields from the previous steps
The dropdown variable has now a new mode:
- if objectNameSingularToSelect is defined, it goes into an object mode.
Only objects of the right type will be shown
- if not set, it will use the already existing mode, to select a field
When an object is selected, it actually set the id of the object
https://github.com/user-attachments/assets/1c95f8fd-10f0-4c1c-aeb7-c7d847e89536
2024-12-05 09:48:34 +00:00
Thomas Trompette
b542b43878
Add record picker with variables ( #8813 )
...
- Add update actions
- Create a folder for workflow actions
- Add a SingleRecordPicker with variables handler
https://github.com/user-attachments/assets/9fd57ce1-1b8d-424a-8aa1-69468d684fa1
2024-11-29 20:33:45 +01:00
Thomas Trompette
83223eeae3
Upgrade relation picker ( #8795 )
...
- Rename all parts using the name "relation" to "record" when component
is only selecting record
- Remove the use of scope states in folder
- Rename entities to records
This PR prepares the use of the record picker in workflows
2024-11-28 18:08:39 +01:00
Thomas Trompette
3573d89c3c
Add a few tests on workflow hooks ( #8800 )
...
As title
2024-11-28 16:54:41 +00:00
Thomas Trompette
5ec6cb0e6f
Make workflow step name editable ( #8677 )
...
- Use TextInput in header title
- add onTitleChange prop
- rename field name instead of label
To fix :
- padding right on title comes from current TextInput component. It
needs to be refactored
https://github.com/user-attachments/assets/535cd6d3-866b-4a61-9c5d-cdbe7710396a
2024-11-22 15:25:01 +00:00
Thomas Trompette
39076df922
Fix version status colored tag + fix trash icon hover ( #8618 )
...
As title
Closes
- https://discord.com/channels/1130383047699738754/1306250586668404736
- https://discord.com/channels/1130383047699738754/1305934421529985055
2024-11-20 18:42:57 +01:00
Thomas Trompette
2773974459
Add disable state to variable tag component ( #8586 )
...
- add hover on variables
- add disable state with readonly props
Disabled
<img width="284" alt="Capture d’écran 2024-11-19 à 16 12 10"
src="https://github.com/user-attachments/assets/19b21429-8500-4cdc-9914-22a7968beb64 ">
Normal
<img width="284" alt="Capture d’écran 2024-11-19 à 16 12 30"
src="https://github.com/user-attachments/assets/bc3be00f-944d-488c-bf05-a9f7b9f134c4 ">
2024-11-19 17:15:32 +00:00
Thomas Trompette
ba1c094775
Fix select filter eq ( #8594 )
...
Fix
https://discord.com/channels/1130383047699738754/1308384008043757640/1308384008043757640
2024-11-19 18:12:08 +01:00
Thomas Trompette
cdf0240ccb
Fix active navigation tab + quick workflows fixes ( #8567 )
...
- Active navigation tab hovered in show page
- remove timeline tab + rename workflow tab
- remove {{variable}} placeholder
- fix margin
- Workflow Runs and Versions show page title
<img width="807" alt="Capture d’écran 2024-11-18 à 18 23 12"
src="https://github.com/user-attachments/assets/688dfc67-362e-4f04-b436-3ff94d7e3e4a ">
2024-11-19 10:55:25 +00:00
Thomas Trompette
a0200e6d91
Fix workspace favorites in storybook ( #8519 )
...
- create mock page when user not logged in
- add mocks when user logged in
Reset password story
<img width="1073" alt="Capture d’écran 2024-11-15 à 16 49 31"
src="https://github.com/user-attachments/assets/5d70d587-8094-47ad-8029-d8c729bd298d ">
Record Index page story
<img width="1073" alt="Capture d’écran 2024-11-15 à 16 49 58"
src="https://github.com/user-attachments/assets/421772a9-62ee-4563-b492-5158db31fb9b ">
Reset password page
<img width="1031" alt="Capture d’écran 2024-11-15 à 16 50 18"
src="https://github.com/user-attachments/assets/2d1cb119-5e34-49d0-9cfa-2b856a96f39c ">
2024-11-18 12:08:05 +01:00
Thomas Trompette
54b28ff7ed
Enable workflow testing + fix header ( #8512 )
...
- clean execution header
- enable test on workflows + add snack bar
- display snack bar error if workflow cannot be tested
Behaviour still need to be validated by @Bonapara
<img width="880" alt="Capture d’écran 2024-11-15 à 12 16 36"
src="https://github.com/user-attachments/assets/1dab0c3b-157c-449f-aee7-4c8cf2e369a6 ">
<img width="880" alt="Capture d’écran 2024-11-15 à 12 16 48"
src="https://github.com/user-attachments/assets/16279611-0a58-4fe6-b117-0192714a6d5c ">
2024-11-15 18:38:39 +01:00
Thomas Trompette
a2a272fed4
Add crud actions ( #8500 )
...
Adding update / delete / find actions
Update and delete are not really different than creation.
Find uses the same logique as for graphql filters.
Expected formats are:
Filter
```
{
"and": [
{
"name": {
"eq": "salut"
}
},
{
"employees": {
"eq": "0"
}
}
]
}
```
Order
`[ { "name": 'AscNullsFirst' } ]`
2024-11-15 10:10:00 +01:00
Thomas Trompette
faeea2b887
Create record action ( #8460 )
...
- Add create record action
- Migrate all step name => action in a common folder
- Separate types
2024-11-13 15:21:40 +01:00
Thomas Trompette
813c57fba6
Create workflow setup command ( #8406 )
...
Steps to enable workflows:
- enable feature flags
- run metadata sync
- run this command
If the feature flag is not true, the command will fail. Which will be
useful to prevent seeding a wrong workspace.
Including a little fix for send email aciton error
2024-11-08 12:40:11 +01:00
Thomas Trompette
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
Thomas Trompette
be8141ce5e
Infer function input in workflow step ( #8308 )
...
- add `inputSchema` column in serverless function. This is an array of
parameters, with their name and type
- on serverless function id update, get the `inputSchema` + store empty
settings in step
- from step settings, build the form
TODO in next PR:
- use field type to decide what kind of form should be printed
- have a strategy to handle object as input
https://github.com/user-attachments/assets/ed96f919-24b5-4baf-a051-31f76f45e575
2024-11-05 14:57:06 +01:00
Thomas Trompette
74291e531c
Fix storybook tests ( #8260 )
...
Before
<img width="717" alt="Capture d’écran 2024-10-31 à 16 58 34"
src="https://github.com/user-attachments/assets/b8ec61f3-11c2-497f-9e4f-183b7989fb59 ">
After
<img width="717" alt="Capture d’écran 2024-10-31 à 16 58 14"
src="https://github.com/user-attachments/assets/8e0a1fbf-19c4-4cd0-ab7b-58ebb5ded1f5 ">
Before
<img width="586" alt="Capture d’écran 2024-10-31 à 16 57 59"
src="https://github.com/user-attachments/assets/eb6caf91-3953-4a8f-a847-17a50cc40d02 ">
After
<img width="586" alt="Capture d’écran 2024-10-31 à 16 57 29"
src="https://github.com/user-attachments/assets/9eee3502-66b4-41c9-a924-b5d3ddb921e3 ">
2024-10-31 17:19:44 +01:00
Thomas Trompette
f5bde0251b
Put back object type in settings form ( #8234 )
...
Before
<img width="673" alt="Capture d’écran 2024-10-31 à 11 15 27"
src="https://github.com/user-attachments/assets/78d81f5b-88c0-40b7-8901-104365ecdd49 ">
After
<img width="673" alt="Capture d’écran 2024-10-31 à 11 15 07"
src="https://github.com/user-attachments/assets/9427da22-a75b-4257-b948-28807b110b26 ">
2024-10-31 10:27:54 +00:00
Thomas Trompette
c7c16f7114
Fix date picker size ( #8216 )
...
<img width="760" alt="Capture d’écran 2024-10-30 à 16 54 19"
src="https://github.com/user-attachments/assets/b9b0f717-d93e-48d4-9df5-b817eab5b704 ">
2024-10-30 17:34:05 +01:00
Thomas Trompette
409def8431
Fix manual trigger output schema ( #8150 )
...
- add schema for manual trigger
- split into sub functions
- handle case with no variables
2024-10-28 17:42:09 +00:00
Thomas Trompette
2ba98ddadd
Handle NBSP in tiptap parsing ( #8148 )
...
Tiptap uses non breaking spaces between nodes (like variables). Those
html characters are not properly handles in emails. Replacing by regular
spaces during parsing.
I tried to fix it in settings but looks like this is only for preserving
those nbsp and not for removal (see
https://github.com/ueberdosis/tiptap/pull/254 )
2024-10-28 15:50:14 +01:00
Thomas Trompette
2e73d020a3
Text area using variables ( #8034 )
...
- Adding multiline props to component
- Update design and logic accordingly
- Fix hotkey scope for right drawer
https://github.com/user-attachments/assets/65ff9641-71a4-4828-a62b-e09327b63150
2024-10-25 12:55:56 +00:00
Thomas Trompette
2e8b8452c1
Add available variables dropdown ( #7964 )
...
- Add variable dropdown
- Insert variables on click
- Save variable as `{{stepName.object.myVar}}` and display only `myVar`
https://github.com/user-attachments/assets/9b49e32c-15e6-4b64-9901-0e63664bc3e8
2024-10-23 18:32:10 +02:00
Thomas Trompette
f338d01b4f
Build code introspection service ( #7760 )
...
Starting to use ts-morph to retrieve function parameters
2024-10-17 15:08:42 +02:00
Thomas Trompette
e811bae10e
Execute variables in action input ( #7715 )
...
- send context from all previous steps rather than unique payload
- wrap input data in settings into input field
- add email into send email action settings
- update output shape
<img width="553" alt="Capture d’écran 2024-10-15 à 15 21 32"
src="https://github.com/user-attachments/assets/0f5ed004-0d6e-4a59-969b-a5710f3f3985 ">
<img width="761" alt="Capture d’écran 2024-10-15 à 15 20 09"
src="https://github.com/user-attachments/assets/ac140846-c383-483b-968a-eab469b76785 ">
2024-10-16 14:32:06 +02:00
Thomas Trompette
c91a8c6abf
Check if relation before trying to input relation label ( #7605 )
...
Bug introduced by https://github.com/twentyhq/twenty/pull/7363
Input value was not set during edition for field that were not relations
Fixed
<img width="893" alt="Capture d’écran 2024-10-11 à 16 53 56"
src="https://github.com/user-attachments/assets/511077c6-5dff-49a1-b058-24a83d998dcf ">
2024-10-11 17:11:11 +02:00
Thomas Trompette
9a77386917
Fix workflow statuses ( #7555 )
...
Event was not emitted after first version insertion. So initial status
was not set.
Also adding workflow related objects to timeline activities.
2024-10-10 15:36:33 +02:00
Thomas Trompette
c055d167f2
Make workflow objects read only in frontend ( #7545 )
...
Expected behavior:
- workflows can be added and deleted. Only name field is editable
- versions and runs cannot be added nor deleted. No fields are editable
Added two new utils for those needs:
- `isReadOnlyObject` the similar logic between remote objects, versions
and runs
- `isFieldReadonlyFromObjectMetadataName` to easily block field edition
from object context
2024-10-10 15:29:43 +02:00
Thomas Trompette
10fa6e1a6f
Add margin bottom to all navigation drawer items ( #7544 )
...
<img width="259" alt="Capture d’écran 2024-10-09 à 15 43 39"
src="https://github.com/user-attachments/assets/4ddf2ca6-73a6-4d18-9ec6-83b30d66514f ">
<img width="259" alt="Capture d’écran 2024-10-09 à 15 43 49"
src="https://github.com/user-attachments/assets/a2c82fba-954a-4104-9a83-427d11644567 ">
2024-10-09 16:20:24 +02:00
Thomas Trompette
cbdd09b00e
Fix advanced settings animation ( #7497 )
...
As title
2024-10-08 17:14:50 +02:00
Thomas Trompette
66ec70f776
Fix hover advanced settings ( #7488 )
...
<img width="264" alt="Capture d’écran 2024-10-08 à 12 12 59"
src="https://github.com/user-attachments/assets/a01621ef-d7e8-44d1-b301-9579ab632a60 ">
2024-10-08 13:36:20 +02:00
Thomas Trompette
fbb5b3dfd4
Fix settings navigation advanced design ( #7472 )
...
This PR moved the settings navigation to the left and bottom
https://github.com/twentyhq/twenty/pull/7130
Updating the logic to:
-remove logic that move the existing
-add the setting icon to absolute
<img width="264" alt="Capture d’écran 2024-10-07 à 18 04 05"
src="https://github.com/user-attachments/assets/b848a5dd-50e9-48c2-bb50-1dcffa9481ac ">
<img width="264" alt="Capture d’écran 2024-10-07 à 18 04 11"
src="https://github.com/user-attachments/assets/3812929c-dce0-410b-8caa-3ea1210af958 ">
2024-10-07 18:19:00 +02:00
Thomas Trompette
b5d1486830
Fix currency input ( #7469 )
...
Fix https://github.com/twentyhq/twenty/issues/7458
2024-10-07 15:00:47 +02:00
Thomas Trompette
ce676f699d
Add opened section ( #7265 )
...
When object is not part of the workspace favorite list, we want to show
it in the "opened section" while its record page is accessed.
This PR:
- adds a new component `NavigationDrawerOpenedSection`
- makes workflow versions and runs not system object + creates a
prefilled view index for these
- do not create workspace favorites for these so these do not appear in
the workspace section
<img width="1129" alt="Capture d’écran 2024-09-26 à 11 45 25"
src="https://github.com/user-attachments/assets/c84d773c-0bef-4dce-b66a-55d7d00b0fb6 ">
2024-10-07 13:45:29 +02:00
Thomas Trompette
ca027d6772
Add output to workflow run ( #7276 )
...
Example of output stored for following workflow:
<img width="244" alt="Capture d’écran 2024-09-27 à 11 18 06"
src="https://github.com/user-attachments/assets/722bfa96-2dd1-41f7-ab87-d39584ac9efc ">
Output:
```
{"steps": [
{"type": "CODE", "result": {"email": "test@twenty.com "}},
{"type": "SEND_EMAIL", "result": {"success": true}}
]}
```
2024-09-30 18:45:44 +02:00
Thomas Trompette
6736ca784b
Update clean view command + add dry run to favorite backfill ( #7268 )
...
Clean favorites associated with activities
2024-09-26 15:00:47 +02:00
Thomas Trompette
49b5e53ceb
Add index key to tasks and notes views ( #7241 )
...
Missing INDEX key for some tasks and notes views. We need it to backfill
favorites.
2024-09-25 11:51:25 +02:00
Thomas Trompette
bb875b1ea8
Fix lambda creation ( #7201 )
...
As title
2024-09-23 14:28:22 +02:00
Thomas Trompette
c8c1890ad7
Safely parse phone numbers before display ( #7186 )
...
Timeline activity properties are stored as string rather than array.
Adding a safe parsing in front. Would be better to also update in
backend but doing this as a quick fix
2024-09-20 17:40:12 +02:00
Thomas Trompette
8964d26d5b
Clean views without object metadata ( #7153 )
...
Add command for cleaning + clean on object deletion
2024-09-19 18:13:07 +02:00
Thomas Trompette and Charles Bochet
b1cb8998f8
Backfill workspace favorites ( #7122 )
...
- command to backfill workspace favorites
- create workspace favorites on workspace activation
- create workspace favorites on demo seed
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-09-18 18:26:55 +02:00
Thomas Trompette
741a969cc1
Add fail on metadata cache miss ( #7118 )
...
- avoid failing when missing cache (used for command)
- remove unused load cache function. Cache will be always re-created
when trying to fetch if not existing
2024-09-18 15:40:24 +02:00
Thomas Trompette
78d8df6a68
Add workspace favorites behind feature flag ( #6904 )
...
- make member nullable on favorites
- add potential relation with view entity
- add a new type of favorite list in front : workspace favorite
- build a new component for retrieving workspace favorite to display +
refacto the existing one
Bonus:
- removing activities seed since this is deprecated
2024-09-05 16:41:06 +02:00
Thomas Trompette
44ff55f550
Enable payload without status update ( #6881 )
...
As title
2024-09-03 17:24:29 +02:00
Thomas Trompette
50a65ef46b
Add workflow query hooks ( #6876 )
...
Workflow version :
- prevent status to be update manually
- prevent creation / deletion in another status than draft
- prevent creation if a draft already exists
Workflow:
- prevent statuses to set manually
WorkflowRun:
- prevent all manual operations
2024-09-03 17:07:22 +02:00
Thomas Trompette
329e7364a4
Prevent workflow version from bad update ( #6848 )
...
Closes https://github.com/twentyhq/twenty/issues/6840
- Add query-hooks folder in common. Will be followed by hooks for
workflows and runs
- When updating a version, ensure the status is draft and that the
status is not manually updated
2024-09-02 16:20:20 +02:00
Thomas Trompette
a3ea0acd1a
Set statuses on workflows ( #6792 )
...
Add listener to keep status on workflows up to date:
- version draft => statuses should contain draft
- version active => statuses should contain active
- version deactivated => if no version active, statuses should contain
deactivated
Renaming also the endpoints because it was not reflecting the full
behaviour.
Finally, adding a new status Archived for versions. Will be used when a
version is deactivated, but is not the last published version anymore.
It means this version cannot be re-activated.
2024-08-30 18:06:04 +02:00
Thomas Trompette
8982a5833c
Bump version to 0.24 ( #6789 )
...
As title
2024-08-29 18:22:48 +02:00
Thomas Trompette
ff1adb06b2
Add workflow statuses ( #6765 )
...
Following figma updates
https://www.figma.com/design/PNBfTgOVraw557OXChYagk/Explo?node-id=21872-7929&t=DOUzd6rzwr6lprcs-0
- No activity targets for workflow entities for now
- Adding a direct relation between workflow run et workflow
- Adding a status on the version (draft, active, deactivated)
- Adding a list of statuses on workflow
- publishedVersionId => lastPublishedVersionId
Also adding:
- the endpoint to deactivate a version
2024-08-28 14:53:25 +02:00
Thomas Trompette
9f69383aa2
Add function execution throttler ( #6742 )
...
Add throttler service to limit the number of function execution
2024-08-27 18:56:47 +02:00
Thomas Trompette
0a7700351f
Update workflow version struct ( #6716 )
...
We want to avoid the nested structure of active pieces. Steps to execute
will now be separated from the trigger. It will be an array executed
sequentially.
For now a step can only be an action. But at some point it will also be
a branch or a loop
2024-08-22 17:59:16 +02:00
Thomas Trompette
be50a6256f
Check workflow version is valid before publishing ( #6702 )
...
Fix https://github.com/twentyhq/twenty/issues/6670
2024-08-21 17:56:33 +02:00
Thomas Trompette
663acd56e4
Trigger workflow run manually ( #6696 )
...
Fix https://github.com/twentyhq/twenty/issues/6669
- create a commun function `startWorkflowRun` that both create the run
object and the job for executing the workflow
- use it in both the `workflowEventJob` and the `runWorkflowVersion`
endpoint
Bonus:
- use filtering for exceptions instead of a util. It avoids doing a try
catch in all endpoint
2024-08-21 17:41:26 +02:00
Thomas Trompette
6927f46e1c
Migrate to workspace services ( #6628 )
...
As title
2024-08-14 18:46:36 +02:00
Thomas Trompette
9e7714e627
Add workflow run entity ( #6622 )
...
- create a workflow run every time a workflow is triggered in
not_started status. This status will be helpful later for once workflows
will be scheduled
- update run status once workflow starts running
- complete status once the workflow finished running
- add a failed status if an error occurs
2024-08-14 18:27:32 +02:00
Thomas Trompette
0f75e14ab2
Create default view for workflows + fix task and note targets ( #6620 )
...
As title
2024-08-14 12:04:41 +02:00
Thomas Trompette
39512a779e
Fix storybook tests ( #6594 )
...
As title
2024-08-09 19:39:16 +02:00
Thomas Trompette
ab12d9e8da
Fix perf tests storybook ( #6584 )
...
As title
2024-08-08 21:43:02 +02:00
Thomas Trompette
a0e5ca44ba
Fix last batch of jest tests ( #6582 )
...
As title
2024-08-08 15:53:17 +02:00
Thomas Trompette
74229a80c8
Fix broken tests batch 2 ( #6573 )
...
As title
2024-08-08 11:16:59 +02:00
Thomas Trompette and Weiko
12e55fd5b7
Bump version to 0.23.1 ( #6567 )
...
As title
---------
Co-authored-by: Weiko <corentin@twenty.com >
2024-08-07 17:09:30 +02:00
Thomas Trompette
9a0c9672a0
Fix createdBy and activity tests ( #6569 )
...
As title
2024-08-07 16:21:06 +02:00
Thomas Trompette and Weiko
2abb6adb61
Build exceptions and handler ( #6459 )
...
Adding exceptions and handler for auth services.
Tested with:
- Workspace creation
- Workspace signup
- Workspace invitation
- Reset password
- Adding email account
- Impersonation
---------
Co-authored-by: Weiko <corentin@twenty.com >
2024-08-07 11:42:49 +02:00
Thomas Trompette
1ed31d9d68
Force order in navigation panel for notes and tasks ( #6557 )
...
As title. Tasks and Notes order sometimes change
2024-08-06 18:24:33 +02:00
Thomas Trompette
67c41251fb
Make bool fields editable again ( #6551 )
...
As title
2024-08-06 13:50:55 +02:00
Thomas Trompette and Félix Malfait
277c51d58e
Add note and task target relation creation for customs ( #6515 )
...
As title
Urgent bug to fix, I will take the time to refacto this code next week
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
2024-08-02 18:04:32 +02:00
Thomas Trompette
0c036efcc4
Remove duplicated index from view picker ( #6514 )
...
<img width="815" alt="Capture d’écran 2024-08-02 à 15 15 51"
src="https://github.com/user-attachments/assets/0b192091-39f9-46c4-80b8-3c1a97f00480 ">
2024-08-02 15:18:29 +02:00
Thomas Trompette
950882d9fa
Fix title padding and style on task and attachment ( #6509 )
...
Fix https://github.com/twentyhq/twenty/issues/5923
<img width="593" alt="Capture d’écran 2024-08-02 à 12 09 24"
src="https://github.com/user-attachments/assets/a1c84060-9b32-4780-beb7-f44b85e49d07 ">
<img width="593" alt="Capture d’écran 2024-08-02 à 12 09 29"
src="https://github.com/user-attachments/assets/641cab31-723c-4253-9c3c-00fef70f2d06 ">
<img width="593" alt="Capture d’écran 2024-08-02 à 12 09 33"
src="https://github.com/user-attachments/assets/ba2adcb6-7651-4288-91f3-304d13c3e7bd ">
2024-08-02 15:01:54 +02:00
Thomas Trompette
931a19260f
Fix label fonts in timeline events ( #6511 )
...
As title
2024-08-02 14:53:59 +02:00
Thomas Trompette
8c8f192765
Trigger workflow on database event ( #6480 )
...
- Add global listener on database event
- Fetch event listener associated
- Trigger associated workflow
Also updated the runner so it expects the input to be in the payload
rather than the trigger
2024-08-01 11:57:44 +02:00
Thomas Trompette
68e3730be1
Fix base graphql error message ( #6457 )
...
Display error message instead of name
<img width="762" alt="Capture d’écran 2024-07-30 à 15 51 07"
src="https://github.com/user-attachments/assets/a6b49254-a99e-42fc-8704-089f38bf8e7b ">
2024-07-30 15:55:57 +02:00
Thomas Trompette
e3496a19b5
Move folder ( #6451 )
...
Fix folder mistake
2024-07-30 14:16:23 +02:00
Thomas Trompette
ee14f25996
Add enable workflow trigger endpoint ( #6443 )
...
Basic endpoint that only returns a boolean currently and overrides the
previous listener.
2024-07-30 14:00:37 +02:00
Thomas Trompette and Charles Bochet
515d6fb1c5
Filter out by error code + invert filtering ( #6432 )
...
As title
Instance of not working well.
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-07-29 16:18:23 +02:00