bf8ee99ebb
chore: use common eslint config for most packages ( #4705 )
...
Split from https://github.com/twentyhq/twenty/pull/4518
Related to #4766
Mutualizes eslint config between projects.
I didn't include `twenty-server` in this PR as this was causing too many
lint errors.
2024-04-04 12:05:26 +02:00
ff0db8d716
fix: linked records redirection ( #4312 )
...
Closes : #4093
---------
Co-authored-by: Félix Malfait <felix.malfait@gmail.com >
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2024-04-04 11:01:33 +02:00
bcf5268f7f
3886 - Shortcut Sort/Filter ( #3901 )
...
Closes #3886
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2024-04-04 00:43:44 +02:00
bbffde1ca0
New field currency ( #4338 )
...
Closes #4122
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2024-04-02 15:29:57 +02:00
d694ab1b16
Fix: Update Icon Button Color and Menu Transparency with Icons ( #4704 )
...
Fixes : #4654
2024-04-02 12:32:17 +02:00
5d07b6347e
refactor: move Tabler Icon exports to twenty-ui ( #4727 )
...
Split from https://github.com/twentyhq/twenty/pull/4518
2024-04-01 13:15:47 +02:00
02673a82af
Feat/put target object identifier on use activities ( #4682 )
...
When writing to the normalized cache (record), it's crucial to use _refs
for relationships to avoid many problems. Essentially, we only deal with
level 0 and generate all fields to be comfortable with their defaults.
When writing in queries (which should be very rare, the only cases are
prefetch and the case of activities due to the nested query; I've
reduced this to a single file for activities
usePrepareFindManyActivitiesQuery 🙂 ), it's important to use queryFields
to avoid bugs. I've implemented them on the side of query generation and
record generation.
When doing an updateOne / createOne, etc., it's necessary to distinguish
between optimistic writing (which we actually want to do with _refs) and
the server response without refs. This allows for a clean write in the
optimistic cache without worrying about nesting (as the first point).
To simplify the whole activities part, write to the normalized cache
first. Then, base queries on it in an idempotent manner. This way,
there's no need to worry about the current page or action. The
normalized cache is up-to-date, so I update the queries. Same idea as
for optimisticEffects, actually.
Finally, I've triggered optimisticEffects rather than the manual update
of many queries.
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2024-04-01 13:12:37 +02:00
a28ffee80f
Fix: Save view by clicking outside popup while editing ( #4678 )
...
* fix : #4657 Save view by clicking outside popup while editing
* made changes on save view
* resolved comment
2024-03-28 10:52:42 +01:00
4a493b6ecf
New view picker ( #4610 )
...
* Implement new view picker
* Complete feature
* Fixes according to review
2024-03-22 15:04:17 +01:00
cfb0cce9b8
Refactor Views by cleaning the code, relying on apolloCache and improving performances ( #4516 )
...
* Wip refactoring view
* Post merge conflicts
* Fix review
* Add create view capability
* Fix create object missing view
* Fix tests
2024-03-20 14:21:58 +01:00
afb9b3e375
Prefetching views and favorites ( #4421 )
...
* wip
* Push
* Complete work on prefetch
* Add comment
* Fix
* Fix
* Fix
* Fix
* Remove dead code
* Simplify
* Fix tests
* Fix tests
* Fix according to review
* Fix according to review
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2024-03-15 18:35:40 +01:00
680bb11f19
Changed Filter/sort labels font weight to medium instead of bold. ( #4500 )
...
* changed font weight to 500 for filter/sort labels
* Removed isSort prop and StyledChipProps type
2024-03-15 17:36:11 +01:00
5287b7c4ab
Add icon, position and key on View ( #4413 )
...
* Add view key field
* Update Prefill demo, seed dev, prefill new workspace
2024-03-11 17:00:19 +01:00
581dfafe11
Renamed nullable utils into isDefined and isUndefinedOrNull ( #4402 )
...
* Renamed nullable utils into isDefined and isUndefinedOrNull
2024-03-11 14:28:57 +01:00
ec384cc791
Implement eager load relations on graphqlQueries ( #4391 )
...
* Implement eager load relations on graphqlQueries
* Fix tests
* Fixes
* Fixes
2024-03-10 23:42:23 +01:00
86c0f311f5
Introduce ComponentState ( #4386 )
...
* Proof of concept ComponentState
* Migrate to createState and createFamilyState
* Refactor
* Fix
* Fix tests
* Fix lint
* Fix tests
* Re-enable coverage
2024-03-09 11:31:00 +01:00
17511be0cf
TWNTY-3794 - ESLint rule: only take explicit boolean predicates in if statements ( #4354 )
...
* ESLint rule: only take explicit boolean predicates in if statements
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Merge main
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Fix frontend linter errors
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Fix jest
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Refactor according to review
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Refactor according to review
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
* Fix lint on new code
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
---------
Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com >
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: Toledodev <rafael.toledo@engenharia.ufjf.br >
2024-03-09 10:48:19 +01:00
9190bd8d7f
Deprecate old board ( #4352 )
...
* Deprecate old board
* Fix tests
* Fix tests
2024-03-07 10:02:45 +01:00
6bb7042a68
Select Field Input Menu scrollable and add Select Field in Filter and Sort ( #3656 )
...
* - fix Select Option Menu scrollable and added search
- add select field in filter and sort operation
* Fix lint
* Fix post merge
* Fix select filter
* Fix
* Remove duplicated search input
* fix turn object into query
* Rename search inputs
* Remove debounced for options
* Simplify option filter
* Rename option to MenuItemSelectTag
* Fix test
* Infer type from field metadata item
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
Co-authored-by: Thomas Trompette <thomast@twenty.com >
2024-03-05 17:41:41 +01:00
30df6c10ea
test: improve utils coverage ( #4230 )
...
* test: improve utils coverage
* refactor: review - rename isDefined to isNonNullable, update tests and return statement
2024-02-29 17:03:52 +01:00
f543191552
TWNTY-3825 - ESLint rule: const naming ( #4171 )
...
* ESLint rule: const naming
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev >
* Refactor according to review
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev >
* refactor: Reverts changes on `twenty-server`
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev >
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
---------
Co-authored-by: gitstart-twenty <gitstart-twenty@users.noreply.github.com >
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: KlingerMatheus <klinger.matheus@gitstart.dev >
2024-02-25 13:52:48 +01:00
201a2c8acc
feat: display record identifier field as first column in table ( #3788 )
...
* feat: display record identifier field as first column in table
& forbid hiding and moving record identifier column
Closes #3303
* refactor: add availableTableColumnKeysSelectorScopeMap
* feat: show plus icon button for label identifier column and dropdown menu for other columns
* fix: use label identifier field value in RecordShowPage title
* refactor: remove availableColumnKeys selector
* refactor: review - compute label identifier logic in mapViewFieldsToColumnDefinitions + remove selectors
* fix: several fixes
* fix: fix board fields isVisible
* fix: fix board fields reordering
* fix: more board fields fixes
* fix: fix hiddenTableColumnsSelectorScopeMap
2024-02-09 12:36:08 +01:00
719da29795
Store compact view status ( #3850 )
...
* Store compact view status
* Rename to isCompact
* Fixes
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-02-08 16:33:52 +01:00
f68de1a299
Board improvements ( #3694 )
...
* New board improvements
* Improve board
* Fix
2024-01-30 15:24:03 +01:00
ada8f55574
Refactor Field Inputs ( #3658 )
...
* Rename field to record-field folder
* Simplify FieldInput
* Fix perfs
* Fixes
* Fixes
* Fix tests
* Fix tests
2024-01-27 23:42:39 +01:00
ccbf773fd4
Load empty board if view type is kanban ( #3605 )
...
* Load empty board if view type is kanban
* Fix tests
* Revert
2024-01-24 16:17:47 +01:00
f48814f6d9
Tag current board as deprecated to make room for the new record board implementation ( #3601 )
2024-01-24 12:36:42 +01:00
f1b3d1537a
Load views on user load and read in cache ( #3552 )
...
* WIP
* Poc
* Use cached root query + remove proloaded views state
* Fix storybook test + fix codegen
* Return default schema if token is absent, unauthenticated if token is invalid
* Use enum instead of bool
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-22 16:00:16 +01:00
fb93bb69fb
Fix opportunity relation ( #3478 )
...
* Fix opportunity relation
* Fix
* Fix
* Fix tests
* Fix
* Fix
2024-01-16 14:39:48 +01:00
985c2f321e
feat: add link to relation filtered table in Record Show Page ( #3261 )
...
* 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 >
2024-01-11 20:51:06 +01:00
e2bdf0ce45
Recursively turn relation connection into records ( #3334 )
...
* 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 >
2024-01-11 20:27:59 +01:00
2713285a0f
Migrate dropdown to scope map ( #3338 )
...
* Migrate dropdown to scope map
* Run lintr
* Move Dropdown Scope internally
* Fix
* Fix lint
---------
Co-authored-by: Thomas Trompette <thomast@twenty.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-10 15:46:37 +01:00
96264e264c
Refactor recoil v4 ( #3266 )
...
* Refactor recoil v4
* Fix ci
2024-01-05 19:18:22 +01:00
80c1c9aacc
Increase test coverage for /modules/views ( #3211 )
...
* Increase test coverage for `/modules/views`
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: RubensRafael <rubensrafael2@live.com >
* fix failing test
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: RubensRafael <rubensrafael2@live.com >
* Refactor into smaller tests
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: RubensRafael <rubensrafael2@live.com >
* Refactor according to review
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: RubensRafael <rubensrafael2@live.com >
* fix linter
Co-authored-by: v1b3m <vibenjamin6@gmail.com >
Co-authored-by: RubensRafael <rubensrafael2@live.com >
* Fix unknown
---------
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 <charlesBochet@users.noreply.github.com >
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-05 09:58:19 +01:00
8483cf0b4b
POC: chore: use Nx workspace lint rules ( #3163 )
...
* chore: use Nx workspace lint rules
Closes #3162
* Fix lint
* Fix lint on BE
* Fix tests
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-03 23:07:25 +01:00
b0d3e6d8d3
3157 refactor scoped states to move to v3 ( #3180 )
...
* renaming
* renaming
* create getDropdownScopeInjectors
* update useDropdown
* create internal hooks folder
* update record-table states to be scoped states
* update record-table selectors to be scoped selectors
* create utils scope injector
* refactor record-table wip
* refactor record-table wip
* wip
* inject scopeId in selectors
* update intenal hooks
* update intenal hooks
* update intenal hooks
* update intenal hooks
* update intenal hooks
* update intenal hooks
* update internal hooks
* update internal hooks
* update internal hooks
* update internal hooks
* update useTableColumns
* update states and hooks
* refactoring
* refactoring
* refactoring
* refactoring
* refactoring
* refactoring
* refactoring
* refactoring
* refactoring
* fix scopeId not in context
* fix lint errors
* fix error in story
* fix errors: wip
* fix errors
* fix error
* fix jest test
* fix scopeId not defined
* fix jest test
* Bug fixes
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2024-01-03 19:45:14 +01:00
858c294f14
Website improvements 4 ( #3182 )
...
* Add contributor individual page
* Improve mobile menu
* Fix
* Remove yarn.lock from twenty-website
* Add yarn to gitingore
* Fix linter
2023-12-31 10:41:53 +01:00
fd607789f4
Replace all hardcoded core object name by enum ( #3170 )
...
* Replace hardcoded core object name by enum
Signed-off-by: Florian Grabmeier <flo.grabmeier@gmail.com >
* Fix typo
Signed-off-by: Florian Grabmeier <flo.grabmeier@gmail.com >
* Fixed duplicate import
---------
Signed-off-by: Florian Grabmeier <flo.grabmeier@gmail.com >
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2023-12-29 15:11:30 +01:00
e9bc13b5fa
Refactor recoil scope states ( #3097 )
...
* Refactor recoil scope states
* Complete refactoring
* Fix
2023-12-21 14:25:18 +01:00
687c9131f4
Feat/record optimistic effect ( #3076 )
...
* WIP
* WIP
* POC working on hard coded completedAt field
* Finished isRecordMatchingFilter, mock of pg_graphql filtering mechanism
* Fixed and cleaned
* Unregister unused optimistic effects
* Fix lint
* Fixes from review
---------
Co-authored-by: Charles Bochet <charles@twenty.com >
2023-12-20 20:31:48 +01:00
18b2e2b748
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 >
2023-12-15 21:39:17 +01:00
8916dee352
Fix Icon Lazy Loading ( #2984 )
...
Fix Icon picker
2023-12-14 12:13:02 +01:00
4673a302c7
2951-fix: Editing view filters button fix ( #2954 )
...
* 2951-fix: Editing view filters button fix
* Fixed lint
---------
Co-authored-by: Lucas Bordeau <bordeau.lucas@gmail.com >
2023-12-13 18:00:43 +01:00
bded46444d
Added ability to edit filter and sort chip directly ( #2968 )
...
* - Added EditableSortChip
- Fixed EditableFilterChip onRemove not closing
* Added missing script in dependencies
* Linted files
* Finished fixing lint
2023-12-13 15:24:06 +01:00
5bdca9de6c
Migrate to a monorepo structure ( #2909 )
2023-12-10 18:10:54 +01:00