1
1
mirror of https://github.com/twentyhq/twenty.git synced 2024-12-23 03:51:36 +03:00
Commit Graph

507 Commits

Author SHA1 Message Date
Félix Malfait
f6e1e626fd
Make the sidebar collapsable ()
* Make the sidebar collapsable

* Fix padding

* Automatically collapase sidebar and hide container on mobile

* Hide navbar content when navbar is collapsed

* Update naming convention for states
2023-06-09 15:09:21 +02:00
Lucas Bordeau
1d6f1f4551
Fixed space between filter & sort button is too large ()
Fixed filters CSS
2023-06-09 11:07:11 +02:00
Lucas Bordeau
ab1f1a3f67
Added shadow effect on table cell hover ()
Added shadow effect to replace border resizing components
2023-06-09 11:06:01 +02:00
Félix Malfait
024adb9221
Add cmd k to navigate pages ()
* Begin styled command bar

* Add 2 commands and improve styling

* Add storybook

* Move z-index to variables and use hotkey hook
2023-06-08 18:28:02 +02:00
Lucas Bordeau
4727c00a0a
Lucas/t 365 on comment drawer i see a add comment section with severa ()
* Added comments and authors on drawer with proper resolving

* Fixed generated front graphql from rebase

* Fixed comment chip

* wip

* wip 2

* - Added string typing for DateTime scalar
- Refactored user in a recoil state and workspace using it
- Added comment creation

* Put theme and user state in generic providers

* Fix from rebase

* Fixed app theme provider removed from storybook

* Wip

* Fix graphql front

* Fixed backend bug

* - Added comment fetching in creation mode
- Fixed drawer overflows and heights

* - Fixed autosize validation button CSS bug

* Fixed CSS bug with drawer changing height if overflow

* Fixed text input too many event catched and useless error message

* Removed console.log

* Fixed comment cell chip

* Create comment thread on each comment action bar click

* Fixed lint

* Fixed TopBar height
2023-06-08 17:40:58 +02:00
Sammy Teillet
49a99c8ae6
Sammy/t 392 aau i can drag and drop opportunities ()
* refactor: extract data from Board component

* feature: display board on opportunities page

* test: add strict mode in storybook

* chore: replace dnd to make it work with React 18 and strict mode

Atlassion has not fixed this issue in a year so we use the fork @hello-pangea/dnd
https://github.com/atlassian/react-beautiful-dnd/issues/2350

* refactor: move mocked-data in a file

* chore: use real column names in mock data

* feature: design columns

* feature: add New button at bottum of columns

* bugfix: move header out of dragable so the cards does not flicker on drop

* lint: remove useless imports

* refactor: rename board item key
2023-06-08 17:40:25 +02:00
Sammy Teillet
b827716d1b
Sammy/t 394 aadev i have a storybook with drag and drop features ()
* feature: add Board component

* feature: add BoardColumn

* feature: add BoardCard

* chore: install react beautiful dnd

* refactor: use children instead of item parameter

* feature: wrap board in DragDropContext

* feature: wrap columns in dropable

* feature: wrap boardCard in draggable

* feature: add a second column

* refactor: rename columns to initialBoard

* refactor: use itemKeys instead if item directly

* feature: add key for react to render

* refactor: type the onDragEnd callback

* feature: drag and drop elements between columns
2023-06-08 15:09:40 +02:00
Lucas Bordeau
ce4ba10f7b
Lucas/t 369 on comment drawer i can reply to a comment thread and it ()
* Added prisma to suggested extension in container

* Added comments and authors on drawer with proper resolving

* Fix lint

* Fix console log

* Fixed generated front graphql from rebase

* Fixed right drawer width and shared in theme

* Added date packages and tooltip

* Added date utils and tests

* Added comment thread components

* Fixed comment chip

* wip

* wip 2

* - Added string typing for DateTime scalar
- Refactored user in a recoil state and workspace using it
- Added comment creation

* Prepared EditableCell refactor

* Fixed line height and tooltip

* Fix lint
2023-06-08 08:36:37 +00:00
Lucas Bordeau
5e2673a2a4
Lucas/t 366 on comment drawer when i have comments on the selected ()
* Fixed right drawer width and shared in theme

* Added date packages and tooltip

* Added date utils and tests

* Added comment thread components

* Fixed comment chip

* Fix from rebase

* Fix from rebase

* Fix margin right

* Fixed CSS and graphql
2023-06-07 10:48:44 +00:00
Sammy Teillet
b1bf050936
test: add story for table header ()
* test: add story for table header

* feature: wrap chips in a container and set shrink to 0 so they don't grow vertically

* feature: cancel button is darker

* feature: set gap between chip to 4px instead of 8

* lint: remove unused code

* bugfix: ChipContainer has a starting margin
2023-06-06 17:45:07 +02:00
Sammy Teillet
86e00c3a03
Sammy/t 362 on people view when i click on comment bubble icon row level ()
* test: add empty comment test

* test: comments section opens on click on comments chip

* test: add a failing test for opening comment section

* feature: open comments drawer on click on comment chip

* test: refactor company test, create folders
2023-06-06 14:34:35 +02:00
Félix Malfait
2315504ee4
Add square logo without border radius () 2023-06-06 09:37:42 +02:00
Felix Malfait
41fe78bc4c
Enable dark mode and fix theme 2023-06-05 22:20:55 +02:00
Sammy Teillet
c70bea9513
feature: display a message when user is not defined ()
* feature: display a message when user is not defined

* feature: display text in a fadein in case redirection is slow
2023-06-05 15:55:45 +00:00
Sammy Teillet
4cde1d68e8
Sammy/t 367 on comment drawer update top right close icon to match figma ()
* style: add a story for right drawer topbar

* style: use same cross from Tb but rotate it
2023-06-05 15:46:28 +00:00
Sammy Teillet
236437e4ff
Sammy/t fix display of comment section ()
* feature: do not display commentChip if no comments

* style: add mocked data for comment sections
2023-06-05 17:36:56 +02:00
Sammy Teillet
063ef8a4eb
Sammy/t refactor services use generated code ()
* refactor: use generated queries for Companies

* refactor: remove useQuery from service, use generated code

* refactor: rename to ts file instead of tsx

* bugfix: use generatd queries, and fix non existing id in workspace member query
2023-06-05 17:36:14 +02:00
Lucas Bordeau
fe70f30a29
Lucas/t 364 on comment drawer i can fetch all comment threads with ()
* Added prisma to suggested extension in container

* Added comments and authors on drawer with proper resolving

* Fix lint

* Fix console log

* Fixed generated front graphql from rebase
2023-06-05 15:23:29 +02:00
Sammy Teillet
6de90024ef
Sammy/t 363 comments count at row level depends on total comments number ()
* feature: add rightEndContent to editable cell

* refactor: use rightEndContent instead of comments sections

* refactor: move commentCount in a var

* feature: get commentsCount from backend

* refactor: use an index

* feature: use commentCount from backend on people

* refactor: rename commentCount for companies

* refactor: use generated queries, instead of useQuery
2023-06-05 14:41:27 +02:00
Charles Bochet
d3684b34c5
Refactor Editable Cell () 2023-06-04 22:47:49 +02:00
Charles Bochet
7b858fd7c9
Reorganize frontend and install Craco to alias modules () 2023-06-04 11:23:09 +02:00
Charles Bochet
bbc80cd543
Refactor backend and add exception handlers () 2023-06-04 00:21:36 +02:00
Lucas Bordeau
a2fe159c2c
Feat/open comment drawer from comment chip ()
* wip

* Can open comment right drawer from company name cell
2023-06-02 17:51:17 +02:00
Lucas Bordeau
69c1095055
Created ComponentChip and CellComponentChip and their stories ()
* Created ComponentChip and CellComponentChip and their stories

* Fixed from comments

* Fixed icon color

* Fixed needle in a haystack bug
2023-06-02 17:22:48 +02:00
Charles Bochet
a618636180
Add tests on Editable relation () 2023-06-02 16:48:44 +02:00
Charles Bochet
f23bbb9a68
Rename pipeline schema () 2023-06-02 12:39:58 +02:00
Charles Bochet
0609994477
Implement comment count on person and company () 2023-06-02 12:35:20 +02:00
Charles Bochet
2395f791c8
Add Pipelines models in server ()
* Hide workspace and refresh token from schema

* Add pipe models and migrations

* Add seeds

* Update FE graphql schema
2023-06-02 11:20:21 +02:00
Lucas Bordeau
bf3097500a
Lucas/t 223 i can add comments to companies or people using the right ()
* wip

* Implemented comment input text component

* Improved behavior
2023-06-01 19:49:37 +02:00
Charles Bochet
a1fe16812e
Setup our own icons library () 2023-06-01 19:22:35 +02:00
Charles Bochet
9ffd347655
Apply various frontend fixes () 2023-06-01 19:22:26 +02:00
Lucas Bordeau
58bbadcc30
Lucas/t 353 checkbox should change state when clicking on their whole ()
* Added on click on Checkbox component

* - Added test in story
- Added sleep util
- Fixed click target collision (thanks to test !)

* Use a new CheckboxCell to wrap Checkbox

* Fixed lint

* Refactored CSS after comment

* Fixed tests
2023-06-01 13:29:53 +00:00
Lucas Bordeau
52582124f9
Removed borders on workspace container ()
* Wip

* Added mocks on main App story and fixed small mock bugs

* Removed borders on WorkspaceContainer
2023-06-01 12:01:27 +02:00
Charles Bochet
621c3c3213 Build Storybook on main 2023-06-01 11:40:50 +02:00
Charles Bochet
51790d8484
Add chromatic testing () 2023-06-01 11:20:05 +02:00
Charles Bochet
7d87598953 Fix design filter dropdown 2023-06-01 09:12:23 +02:00
Charles Bochet
1ff1dd252c Fix tests 2023-06-01 01:09:48 +02:00
Charles Bochet
5b545e5bc6 Fix design Add button in top bar 2023-06-01 01:01:17 +02:00
Charles Bochet
902aa28150
Apply a few frontend fixes on dropdown () 2023-06-01 00:56:32 +02:00
Lucas Bordeau
723ea462e8
Lucas/t 352 i dont want another input cell to open when i click outside ()
* Added logic to handle global edit mode

* Added recoil global edit mode state into generic editable components

* Fix lint

* Added tests
2023-05-31 16:33:11 +02:00
Félix Malfait
c61beb1066
Reorganize icons for doc and manigest.json ()
* Reorganize icons for doc and manigest.json

* Fix icons path

* Fix path in index.html
2023-05-31 15:44:38 +02:00
Charles Bochet
a3a3c1924f
Add comments to Prisma Schema and GraphQL server ()
* Lowercase all relations in prisma/graphql schema

* Add Comments data model and graphql schema

* Make comments availalble on the api through resolvers and guard them

* Update front graphql schema

* Fix PR
2023-05-31 15:41:53 +02:00
Charles Bochet
c0658e1591
Update company logo fetch api () 2023-05-31 11:08:35 +02:00
Charles Bochet
910d49f559
Fix layout behavior with Right panel open () 2023-05-31 09:52:17 +02:00
Lucas Bordeau
cb259d5cf1
Feat/add right drawer ()
* Added right drawer component and logic

* Refactored layout to accept right drawer
2023-05-30 21:03:50 +02:00
Charles Bochet
3674365e6f
Scope server with workspace ()
* Rename User to AuthUser to avoid naming conflict with user business entity

* Prevent query by workspace in graphql

* Make full user and workspace object available in graphql resolvers

* Add Seed to create companies and people accross two workspace

* Check workspace on all entities findMany, find, create, update)
2023-05-30 20:40:04 +02:00
Charles Bochet
30d2337462
Add tests on companies page () 2023-05-29 22:08:01 +02:00
Charles Bochet
2f50cdc07e
Update FE case to match BE graphql case (camelCase) () 2023-05-29 19:45:55 +02:00
Charles Bochet
f935a6b723
Re-write test with storybook testing library ()
* Re-write test with storybook testing library

* Update CI
2023-05-29 11:02:38 +02:00
Lucas Bordeau
8f88605f32
Lucas/refactored table state with recoil ()
* Fixed ActionBar paddings and added transition on button hover

* Added recoil library for state management

* Refactor table state with recoil :

- Removed table internal states
- Added refetchQueries to plug apollo store directly into tables
- Added an action bar component that manages itself
- Use recoil state and selector for row selection
- Refactored Companies and People tables

* Moved hook

* Cleaned some files

* Fix bug infinite re-compute table row selection

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-27 08:41:26 +02:00
Charles Bochet
b95ac8b40b
Add logo on navbar workspace container () 2023-05-26 17:41:21 +02:00
Charles Bochet
26d3716ae7
Implement scoping on be () 2023-05-26 14:00:32 +02:00
Charles Bochet
112aa3720b
Fix graphql Queries () 2023-05-26 08:33:33 +02:00
Charles Bochet
17f5cf1766 Fix graphql queries 2023-05-26 00:31:43 +02:00
Lucas Bordeau
b0044ed1a2
Lucas/t 231 timebox i can create a company at the same time im creating ()
This PR is a bit messy:

adding graphql schema
adding create company creation on company select on People page
some frontend refactoring to be continued

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-25 23:09:23 +02:00
Sammy Teillet
fecf45f3bc
Sammy/t 245 implement resolvers matching hasura ()
* chore: remove old resolvers

* refactor: move generated file in code base

* feature: use only necessary code in graphql

* feature: implement query companies

* feature: implement companies and relations

* feature: implement all companies resolvers

* feature: implement all people resolver

* feature: add use resolvers

* feature: implement resolvers for workspace and users
2023-05-25 17:10:00 +02:00
Charles Bochet
61099f99b8
Simplify setup again to run in vscode () 2023-05-25 16:58:33 +02:00
Charles Bochet
34543b7fea
Simplify local dev () 2023-05-25 15:56:28 +02:00
Charles Bochet
80f9cc8797
Re-implement authentication ()
* Remove hasura and hasura-auth

* Implement authentication
2023-05-25 11:51:15 +02:00
Charles Bochet
5d06398d2e
Remove hasura and hasura-auth ()
* Remove hasura and hasura-auth

* Move all models to prisma

* Start implementing graphql

* chore: clean package json

* chore: make the code build

* chore: get initial graphql.tsx file

* feature: use typegql as qgl server

* refactor: small refactoring

* refactor: clean tests

* bugfix: make all filters not case sensitive

* chore: remove unused imports

---------

Co-authored-by: Sammy Teillet <sammy.teillet@gmail.com>
2023-05-24 17:20:15 +02:00
Charles Bochet
67353eda8e
Add all filters to tables + make column width fixed ()
* Add additional filters on companies and people page

* Make colunn width fixed

* Remove duplicate declaration of Unknown type
2023-05-21 22:47:18 +02:00
Charles Bochet
3370499ad8
Make many small frontend fixes (icons update, paddings, font-sizes) () 2023-05-21 18:52:23 +02:00
Charles Bochet
5adc5b833c
Enable filtering by creation date with datepicker ()
Enable to filter by date with datepicker
2023-05-19 13:17:32 +02:00
Charles Bochet
192b89a7b7
Make companies employees type a number ()
Make companies employees type a number to be consistent with api
2023-05-19 11:53:50 +02:00
Charles Bochet
20bf89ab1e
Add employees and address filter on companies table page () 2023-05-18 18:15:07 +02:00
Charles Bochet
5286dfd695
Refactor Filter type to accept Is, Is Not, Contains, Does not Contain ()
* Refactor Filter type to accept Is, Is Not, Contains, Does not Contain

* Remove any and add tests
2023-05-18 15:32:57 +02:00
Charles Bochet
4211d5872b
Update favicon, manifest, page border () 2023-05-18 10:07:47 +02:00
Charles Bochet
cdc9e24ac0
Simplifies search through relations usage () 2023-05-17 23:10:00 +02:00
Charles Bochet
434e020846
Restructure project () 2023-05-17 22:31:16 +02:00
Sammy Teillet
baca6150f5
Sammy/t 240 frontend filtering search is refactored ()
* refactor: use AnyEntity instead of any

* refactor: remove any and brand company type

* refactor: add typename for user and people

* bugfix: await company to be created before displaying it

* feature: await deletion before removing the lines

* refactor: remove default tyep for filters

* refactor: remove default type AnyEntity

* refactor: remove USers from filterable types

* refactor: do not depend on Filter types in Table

* Add tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-17 21:49:34 +02:00
Charles Bochet
bc49815ff0
Make all fields optional on entities ()
* Make all fields optional on entities

* Rewrite tests

* Add test on TableHeader Cancel button
2023-05-17 14:50:49 +02:00
Sammy Teillet
2facb383a2
bugfix: use row id instead of index to keep row selection after table… ()
* bugfix: use row id instead of index to keep row selection after table update

* bugfix: await creation before displaying the row and refetching
2023-05-17 14:43:09 +02:00
Charles Bochet
499752ed6b
Refactor Filters and Search () 2023-05-17 13:25:33 +02:00
Charles Bochet
7208ec9e5a
Fix bug get current user ()
* Fix bug get current user

* Add tests

* Fix design on Workspace section in Navbar
2023-05-12 09:02:39 +02:00
Charles Bochet
6b2ccd460d
Update Favicon with new logo () 2023-05-09 17:18:42 +02:00
Charles Bochet
2212900663
Enable deletion on table views ()
* Enable deletion on table views

* Add tests

* Enable deletion on table views for companies too
2023-05-08 23:26:37 +02:00
Charles Bochet
94ea9835a9
Enable multi-selection on table views ()
* Enable multi-selection on table views

* Enable multi-selection
2023-05-08 10:58:53 +02:00
Charles Bochet
48a75358b4
Enable add person on People Table ()
Add possibility to add Person on People table
2023-05-08 00:15:32 +02:00
Charles Bochet
50a4a97145
Add new line on Table Views ()
Add addition on Companies table
2023-05-07 23:41:22 +02:00
Charles Bochet
8c7815af79
Hide Opportunities as nothing is built yet and make company table fully editable ()
* Hide Opportunities as nothing is built yet and make company table fully editable

* Fix tests
2023-05-06 19:08:47 +02:00
Charles Bochet
760a49c5e3
Redesign DatePicker () 2023-05-06 18:13:16 +02:00
Charles Bochet
41c46c36ed
Create and EditableRelation component and make it generic ()
* Create and EditableRelation component and make it generic

* Refactor EditableCell component to be more flexible

* Complete Company picker on people page

* Fix lint
2023-05-06 16:08:45 +02:00
Charles Bochet
7ac2f8e1a6
Fix Cancel button behavior on TopFilterAndSort bar () 2023-05-06 08:27:14 +02:00
Sammy Teillet
354cdb6ad9
Sammy/t 195 aau i see filters and sort on company ()
* feature: add company filter by name

* feature: add fitler on URL

* feature: set icons for sorts

* feature: add creation date and address sorts

* Add tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-06 07:59:30 +02:00
Charles Bochet
406e1dc02e
Enable Date edition on People view ()
* Enable Date edition on People view

* Fix linter
2023-05-05 18:52:04 +02:00
Sammy Teillet
b8cd842633
Sammy/t 194 aau when i set sort back and forth the ()
* bugfix: use original row id in cells to make sure it rerenders

* feature: implement multiple sorts

* bugfix: recreate new array to make sure component rerenders

* feature: orderBy is an array to keep orders

* test: snapshot the searchTemplate methods

* feature: remove the console log and return undefined

* feature: use orderByTemplate instead of hardcoded orderBy

* refactor: move sort and where filters helpers out of service

* refactor: rename file helper

* refactor: move assert function in test
2023-05-05 16:22:47 +02:00
Sammy Teillet
f022bf8335
Sammy/t 190 aau i see other filters city on people ()
* feature: add email filter

* feature: add city filter

* test: fix company search tests

* test: use the right value in test

* refactor: test all the filters in a loop
2023-05-05 12:16:25 +02:00
Charles Bochet
55eff2b7a2
Create Editable chip to edit cells containing chips ()
* Create Editable chip to edit cells containing chips

* Fix icons vertical alignment

* Fix linter

* Fix coverage
2023-05-05 12:15:41 +02:00
Sammy Teillet
9cd57083f1
Sammy/t 192 aau whan i select does not include it is ()
* feature: add operand list to filters

* feature: implement not include

* feature: add operand on filters

* feature: use filters operand instead of defaults

* test: adapt test with new operands

* refactor: remove useless %% in gql where

* test: test fullname filter

* test: add test for where rendering of filters
2023-05-05 10:25:06 +02:00
Charles Bochet
89dc5b4d60
Make full name editable on People page ()
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 18:38:29 +02:00
Charles Bochet
f6b691945c
Make phone editable on people's page ()
* Make phone editable on people's page

* Make City editable

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 17:27:27 +02:00
Charles Bochet
e65fd3d6a5
Update Edit Inplace behavior and style ()
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 16:03:13 +02:00
Sammy Teillet
3605c0034c
feature: display only 5 results in filter search ()
* feature: display only 5 results in filter search

* feature: Display laoding in a dropdown item

* test: use testid insread of text
2023-05-04 12:58:43 +00:00
Sammy Teillet
6a8a8f0728
Add Filters on Table views ()
* Add filter search logic

WIP Filter search

Implement filters

test: fix sorts tests

test: fix filter test

feature: search person and display firstname in results

feature: fix test for filter component

test: mock search filters

refactor: create a useSearch hook

refactor: move debounce in useSearch and reset status of filter selection

feature: debounce set filters

refactor: remove useless setSorts

feature: add where variable to people query

feature: strongly type Filters

feature: update WhereTemplate method

feature: implement filtering on full name

feature: type the useSearch hook

feature: use where reducer

refactor: create a type for readability

feature: use query and mapper from filters

feature: implement filter by company

feature: search filter results on filter select

feature: add loading and results to search results in filters

refactor: move render search results in a function

feature: display a LOADING when it loads

feature: split search input and search filter for different debounce

refactor: remove some warnings

refactor: remove some warnings

* Write test 1

* Write test 2

* test: useSearch is tested

* test: update names of default people data

* test: add a filter search

* Test 3

* Fix tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 13:54:46 +02:00
Charles Bochet
27d5edc031
Fetch workspace and user from database ()
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-04 11:09:06 +02:00
Félix Malfait
9bc3aa1fb9
Replace Fontawesome Pro by React-Icons/FA ()
* Fontawesome -> ReactIcons cleanup

* No need for npmrc anymore

* Complete migration

* Fix tests

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-05-03 17:24:07 +02:00
Anders Borch
f28edd405f
I can open the project in GitHub ()
* Ignore node_modules

* Use bash-compatible dotenv format

While still being compatible with dotenv, this
also allows sourcing the file to export all
variables in bash.

* Add prettier extension to recommendations

* Move to port 5001 to avoid conflict with macOS services

* Add workspace

* Add devcontainer

This automatically starts with all environment
variables available locally.

It brings up services which are dependent on each
other individually and verifies health before
moving on to the next service.

* Split init into clean, up, and logs tasks.

This allows the developer to set up .env and .npmrc
files before running services, and does not require
starting from a clean db every time the devcontainer
is restarted.

* Copy .env when creating codespace

* Automatically run UP command upon devcontainer creation

* Fix log message

---------

Co-authored-by: Felix Malfait <felix.malfait@gmail.com>
2023-05-03 11:34:10 +02:00
Anders Borch
27070b374e
In place edit company info ()
* Add update company functionality

* Fix padding in cells with chips

* Add icons to table headers
2023-04-28 06:50:04 +00:00
Anders Borch
d5c1bd6365
Handle missing account owner () 2023-04-28 07:40:40 +02:00
Charles Bochet
571cb6ed5c
Style filter key in bold in filter and search bar ()
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-27 17:28:17 +02:00
Anders Borch
d4b1b2f661
Companies table ()
* Add columns to companies:
* account_owner_id
* employees
* address

Add foreign key constraint companies_account_owner_id_fkey
to auth.users.id

* Add select permissions to:
* account_owner_id
* employees
* address

Add relationship between companies and auth.users.

* Update Companies interface to include:
* account_owner_id
* employees
* address

Opportunity is expected to be replace by actual opportunity in a separate PR.

* Add GetCompanies query

* Add initial companies table

* Update test to use mock apollo provider

* Update to match changed company column names

* Add company interface mapping tests

* Test entire object

* Add test for companies being rendered in table.

* Add test for sorting reduce.

* Fix prettier errors
2023-04-27 12:46:43 +02:00
Sammy Teillet
35cf3ee801
Sammy/t 138 when i select an option i see it ()
* feature: remove selected filter item

* feature: add searchable field in dropdown
2023-04-26 19:10:05 +02:00
Charles Bochet
cabe6d4c36
Add empty opportunity page ()
* Add empty opportunity page

* Fix coverage

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-26 18:00:06 +02:00
Sammy Teillet
884080a9da
refactor: extract render into methods () 2023-04-26 17:38:05 +02:00
Charles Bochet
04051e737f Fix long table scroll 2023-04-26 17:29:00 +02:00
Charles Bochet
6c7eb53333
Add seeds and move to uuid ()
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-26 16:42:01 +02:00
Sammy Teillet
5aec7ca730
Sammy/t 134 i see all filters in the dropdown ()
* feature: add filter dropdown

* test: add story for FilterDropdown

* feature: display filterOperand on top of dropdown

* feature: display filter operand

* feature: fix index and display selected filter

* refactor: set TopOption button inside dropdown file

* feature: move availableFilters outside the fitler component

* refactor: make the available sorts and filter optionnal

* refactor: rename availableSorts

* feature: add a resetState property on onOutsideClick

* feature: add filters and set  filters on Dropdown component

* feature: set filters on click in dropdown

* test: verify button is active after filters are set

* feature: display sorts and filters

* refactor: move SelectedFilters in SortAndFilter

* refactor: move SelectedFilters in dedicated file

* refactor: remove Id and use Key
2023-04-26 14:19:34 +00:00
Anders Borch
1c8a4058c3
Fix html entities and newline handling ()
* Fix html entities and newline handling

This forces contenteditable to behave as single line input,
and properly handles html entities.

* Proposal without reacteditable

* Fix tests and re-add focus styleé

---------

Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-26 11:58:40 +02:00
Charles Bochet
ae7bad65ca
Setup GraphQL Code Generator ()
* chore: add types of schema

* Ease codegen use on FE

* chore: ignore prettier in generated files

* lint: generated files

* feature: strongly type filter of query

* chore: ignore generated files in prettier

* chore: eslint ignore generated files

---------

Co-authored-by: Sammy Teillet <sammy.teillet@gmail.com>
Co-authored-by: Charles Bochet <charles@twenty.com>
2023-04-25 17:25:30 +02:00
Sammy Teillet
a93c92c65c
Sammy/t 131 i see a ascending descending option in ()
* refactor: use safe css selector

* feature: onclick update the order option

* feature: set option in the dropdown

* feature: display icon for sort options

* refactor: indent key so react does not complain of conflicting keys

* feature: align icon and text

* feature: fix size of icon to align text

* feature: create design for TopOption in dropdown

* refactor: set font weight in style

* feature: finalise design of TopOption

* refactor: rename option to sort

* refactor: remove order from the sortType

* refactor: move sort mapper in service

* test: selection of Descending in SortDropdownButton

* refactor: fix styme-component warning

* feature: add sorting by people

* refactor: set SortFields types for tables

* feature: add sort by company

* refactor: rename sortFields to singular

* refactor: rename option to SortDirection
2023-04-25 16:29:08 +02:00
Anders Borch
463b5f4ec9 Mock apollo client.
Remove unit test argument.
2023-04-25 12:55:27 +02:00
Anders Borch
a6254197b1 Add contenteditable change event test 2023-04-25 12:55:27 +02:00
Anders Borch
4e517fa8f9 Add map back to gql person 2023-04-25 12:55:27 +02:00
Anders Borch
443f8ed663 Added update test 2023-04-25 12:55:27 +02:00
Anders Borch
8ed09d61ef Refactor GraphqlPerson to GraphqlQueryPerson
A GraphqlQueryPerson has an id which is used in mutations.
2023-04-25 12:55:27 +02:00
Anders Borch
b6c7149b66 Use EditableCell for email 2023-04-25 12:55:27 +02:00
Anders Borch
b62fac3aee Map Person to GraphqlMutationPerson 2023-04-25 12:55:27 +02:00
Anders Borch
38132749c2 Add updatePerson function 2023-04-25 12:55:27 +02:00
Anders Borch
24a228bd44 Add EditableCell 2023-04-25 12:55:27 +02:00
Charles Bochet
cf9afcc90f
Merge pull request from twentyhq/cbo-design-fixes
Fix small design feedbacks
2023-04-25 12:16:34 +02:00
Charles Bochet
8de2d345ed Add horizontal scroll on tables 2023-04-25 12:14:31 +02:00
Charles Bochet
63feef5727 Fix small design feedbacks 2023-04-25 11:34:04 +02:00
Charles Bochet
67e4e79623
Merge pull request from twentyhq/sammy/t-130-when-a-sort-is-selected-i-see-the-sort
feature: add property isActive for dropdown buttons
2023-04-24 18:39:35 +02:00
Sammy Teillet
f7c53dbdeb
feature: set the right sort on click 2023-04-24 18:17:01 +02:00
Sammy Teillet
0f4dcc1957
refactor: extract dropdown for Sort dropdown 2023-04-24 18:05:29 +02:00
Sammy Teillet
795f9e7af8
refactor: create SortDropdownButton 2023-04-24 17:35:43 +02:00
Sammy Teillet
7cf1f913b0
feature: add property isActive for dropdown buttons 2023-04-24 17:01:26 +02:00
Charles Bochet
d4152fdcff
Merge pull request from twentyhq/cbo-add-user-to-workspaces-on-signup
Assign user to workspace on signin
2023-04-24 17:01:24 +02:00
Sammy Teillet
19385e00c0
feature: fix background color of dropdown item to be fully transparent 2023-04-24 15:39:36 +02:00
Sammy Teillet
4e3acf21d2
feature: set the right border radius for dropdown items 2023-04-24 15:29:24 +02:00
Sammy Teillet
bb8f61212b
feature: add all the sortable fields for people 2023-04-24 15:01:18 +02:00
Sammy Teillet
19903219c3
refactor: move sorts in peolpe-table 2023-04-24 14:59:53 +02:00
Sammy Teillet
99aa39f2ba
refactor: keep type of sortsAvailable while having type assertion 2023-04-24 14:57:57 +02:00
Sammy Teillet
c3da5fa5f4
feature: put react app in strict mode 2023-04-24 14:56:44 +02:00
Sammy Teillet
6e353f590c
feature: add email in sorts fields 2023-04-24 14:56:20 +02:00
Charles Bochet
6d2c8bbdf9 Assign user to workspace on signin 2023-04-24 14:53:48 +02:00
Sammy Teillet
a5909bd6ff
feature: keep callbacks between two renders 2023-04-24 14:49:40 +02:00
Sammy Teillet
2acd98370d
bugfix: remove infinite renderloop of onSortUpdate 2023-04-24 14:46:39 +02:00
Sammy Teillet
c7dc9cf83b
bugfix: fix direction and zindex of dropdown 2023-04-24 14:18:22 +02:00
Sammy Teillet
be947bdc8f
refactor: strongly type keys of sorts 2023-04-24 14:02:38 +02:00
Sammy Teillet
095a6886ae
refactor: move sortable fields in People 2023-04-24 14:00:14 +02:00
Sammy Teillet
bc91e97695
refactor: move sortable fields in table 2023-04-24 13:55:13 +02:00
Anders Borch
efd6138877 Use GET_PEOPLE in mock 2023-04-24 12:28:22 +02:00
Anders Borch
47bdabd5aa Refactor people query into separate file. 2023-04-24 11:10:56 +02:00
Charles Bochet
a5bfeef2d6
Merge pull request from twentyhq/cbo-fetch-jwt-token
Refresh JWT when expired
2023-04-21 17:33:39 +02:00
Charles Bochet
d3e9709e08 Refresh token when token has expired 2023-04-21 17:31:17 +02:00
Anders Borch
06aa78bc00 Set default pipe icon 2023-04-21 16:28:25 +02:00
Anders Borch
be601c58b1 Add pipe chip 2023-04-21 16:03:29 +02:00
Charles Bochet
049664b98e Require accessToken to browse pages 2023-04-21 15:53:47 +02:00
Charles Bochet
4655544197
Merge pull request from twentyhq/cbo-fetch-jwt-token
Fetch jwt token from hasura-auth with refresh_token
2023-04-21 14:39:08 +02:00
Charles Bochet
678363d8fd Fix according to PR 2023-04-21 14:37:46 +02:00
Anders Borch
4885e3598a Add cancel button.
Add test to ensure that cancel button can remove an item.
2023-04-21 14:17:09 +02:00
Charles Bochet
c5f2850a3b Fetch jwt token from hasura-auth with refresh_token 2023-04-21 14:07:02 +02:00
Charles Bochet
cd18e952b9 Store refresh token on login 2023-04-21 09:33:57 +02:00
Charles Bochet
79e8d9c84b Finalize sort created_at filter 2023-04-21 09:03:19 +02:00
Charles Bochet
0f09464f14 Finalize sort created_at filter 2023-04-21 09:00:50 +02:00
Sammy Teillet
3a7b1077f8
test: wait for rows to be displayed 2023-04-20 18:44:43 +02:00
Sammy Teillet
b5affcce3f
test: fix mocks for person request 2023-04-20 18:08:20 +02:00
Sammy Teillet
a915d15573
refactor: remove useless vars 2023-04-20 18:03:15 +02:00
Sammy Teillet
7d745ab143
refactor: rename setSorts to onSortsUpdate 2023-04-20 17:58:26 +02:00
Sammy Teillet
e0a19bdd43
refactor: rename and remove default data 2023-04-20 16:59:03 +02:00
Sammy Teillet
fbd338ee7d
feature: apply the sorts to the query 2023-04-20 16:56:42 +02:00
Sammy Teillet
33473aea92
feature: add setSorts from parent component 2023-04-20 16:38:29 +02:00
Sammy Teillet
9122815b07
feature: order people results 2023-04-20 15:56:59 +02:00
Sammy Teillet
b3acfa465b
refactor: move mapper in interface 2023-04-20 15:41:18 +02:00
Sammy Teillet
b8032e9605
refactor: move person types in interface 2023-04-20 15:39:56 +02:00
Sammy Teillet
e4edaf183f
test: fix People test 2023-04-20 14:42:17 +02:00
Sammy Teillet
7a89e5591d
refactor: extract mapper 2023-04-20 13:58:54 +02:00
Sammy Teillet
33e12a52c7
refactor: rename default data file 2023-04-20 13:58:54 +02:00
Sammy Teillet
d5ebff5b53
refactor: etract type in file 2023-04-20 13:58:54 +02:00
Sammy Teillet
c1883d381e
feature: strongly type Table component 2023-04-20 13:58:53 +02:00
Sammy Teillet
887a7af5e2
feature: wip get persons and map it 2023-04-20 13:58:53 +02:00
Sammy Teillet
7f2ec0c260
feature: fix Apollo client 2023-04-20 13:58:53 +02:00
Sammy Teillet
874b920571
chore: introduce different creation dates 2023-04-20 13:58:52 +02:00
Sammy Teillet
8555df6f3f
refactor: move style in Cell component 2023-04-20 13:58:52 +02:00
Sammy Teillet
f2dcffd8f0
refactor: move data types and table definition out of People component 2023-04-20 13:58:52 +02:00
Charles Bochet
b8d089395f Add linter on CI 2023-04-20 11:51:04 +02:00
Charles Bochet
5a1baf9121 Filter ongoing 2023-04-19 23:15:08 +02:00
Sammy Teillet
3c7bd5cd28
bugfix: fix pointer propagation of links behind the before element 2023-04-19 18:31:03 +02:00
Sammy Teillet
630447a2f6
refactor: put TD up back in the table 2023-04-19 18:21:42 +02:00
Sammy Teillet
a4e7211625
feature: adjust checkbox size 2023-04-19 18:00:30 +02:00
Sammy Teillet
8fa9c7f1db
chore: make sure darktheme implement sames keys as light theme 2023-04-19 17:26:18 +02:00
Sammy Teillet
b4915895fe
feature: display a border when hovering the component 2023-04-19 17:22:16 +02:00
Sammy Teillet
71c18e864f
feature: move TD creation to cells 2023-04-19 17:10:37 +02:00
Sammy Teillet
05c5272c93
feature: make border transparent instead of 0px 2023-04-19 16:47:34 +02:00
Sammy Teillet
74990a3686
feature: clickableCell left space should be inside the border 2023-04-19 16:19:35 +02:00
Sammy Teillet
1a70a5ba65
feature: update icons of People table 2023-04-19 15:58:38 +02:00
Sammy Teillet
0f779f9d43
feature: change the border color again 2023-04-19 15:45:46 +02:00
Sammy Teillet
a361d7732e
feature: remove border of table container 2023-04-19 15:40:08 +02:00
Sammy Teillet
28af85fcb7
feature: set table text colors 2023-04-19 15:35:55 +02:00
Sammy Teillet
d1f05993be
feature: fix default padding of table 2023-04-19 15:24:18 +02:00
Sammy Teillet
6e9b612409
feature: fix color of border 2023-04-19 15:23:09 +02:00
Sammy Teillet
6f9506b924
feature: fix borders of table 2023-04-19 15:19:10 +02:00
Sammy Teillet
0844490c13
feature: wrap all elements in a cell 2023-04-19 15:13:26 +02:00
Sammy Teillet
a843d7d76e
feature: add a left padding in cells 2023-04-19 15:00:22 +02:00
Sammy Teillet
b0b81ba40d
feature: fix table layout 2023-04-19 14:46:54 +02:00
Sammy Teillet
43e71c6c93
Merge pull request from twentyhq/sammy/t-102-i-see-people-chip-designed-with-picture
Sammy/t 102 i see people chip designed with picture
2023-04-19 14:38:41 +02:00
Sammy Teillet
59f64695a2
test: test PersonChip displays image or placeholder 2023-04-19 14:37:36 +02:00
Sammy Teillet
97457f54cb
test: rename test and remove useless nav wrapper 2023-04-19 14:25:27 +02:00
Charles Bochet
1e635b9d2f Add dropdown on Sort button on table 2023-04-19 14:22:51 +02:00
Sammy Teillet
b434f3da45
feature: make the person picture circle 2023-04-19 12:40:57 +02:00
Sammy Teillet
bb5ae02c3a
refactor: use PersonChip in people page 2023-04-19 12:35:19 +02:00
Sammy Teillet
16a1aadba9
feature: add alt tag for image in company chip 2023-04-19 12:28:32 +02:00
Sammy Teillet
8d321013f3
refactor: remove useless ClickableCell props 2023-04-19 12:25:20 +02:00
Sammy Teillet
5962140656
refactor: rename CellLink to ClickableCell 2023-04-19 12:24:25 +02:00
Sammy Teillet
3696bf2617
feature: CellLinkacceptd children 2023-04-19 12:23:27 +02:00
Sammy Teillet
471d6743ad
refactor: create company chip 2023-04-19 12:20:19 +02:00
Sammy Teillet
ddebb35865
refactor: use theme spacings 2023-04-19 11:00:43 +02:00
Sammy Teillet
b6bfefe846
feat: set design of Company chip 2023-04-19 10:55:06 +02:00
Sammy Teillet
38cc857f77
feat: use favicon icon in company chip 2023-04-19 10:51:37 +02:00
Sammy Teillet
51fc383b1a
refactor: rename logo to domain 2023-04-19 10:34:31 +02:00
Charles Bochet
4018ac45b0
Merge pull request from twentyhq/sammy/t-79-i-can-see-checkboxes-ui
feature: add checkbox on people cells
2023-04-18 18:37:09 +02:00
Sammy Teillet
3e09dab7fc
test: add checkbox test 2023-04-18 18:27:54 +02:00
Sammy Teillet
4d23390989
feature: align checkbox and cellLink 2023-04-18 18:13:56 +02:00
Sammy Teillet
0d9b04ea14
feature: set the right color for unchecked checkbox 2023-04-18 18:07:55 +02:00
Sammy Teillet
8701d752d8
refactor: use color from theme 2023-04-18 17:37:20 +02:00
Sammy Teillet
a855c474a0
refactor: create Checkbox component 2023-04-18 17:33:59 +02:00
Sammy Teillet
81da0f4e03
feature: add checkbox on people cells 2023-04-18 16:40:49 +02:00
Sammy Teillet
babd9208e7
chore: change way to store npm secrets 2023-04-18 15:31:58 +02:00
Charles Bochet
c4cc6a397a Rework Table Header 2023-04-14 12:38:40 +02:00
Charles Bochet
c317d4bcf6 Migrate to FontAwesome pro 2023-04-14 12:09:17 +02:00
Charles Bochet
d08066fb9d Add font sizes to themes 2023-04-14 11:06:20 +02:00
Charles Bochet
1499c845e8 Add continous integration 2023-04-13 18:12:57 +02:00
Anders Borch
02fe9ee506 Add email link 2023-04-13 17:28:28 +02:00
Anders Borch
27d4867488 Format creation date 2023-04-13 17:28:09 +02:00
Anders Borch
caf7c168aa Format phone number 2023-04-13 17:27:33 +02:00
Anders Borch
a58735925f Add libphonenumber-js dependency
This is used e.g. for formatting phone numbers in the People list.
2023-04-13 17:26:31 +02:00
Anders Borch
3d976577c1 Add CellLink 2023-04-13 17:25:35 +02:00
Anders Borch
8f8315b9bc Add person placeholder image 2023-04-13 10:55:12 +02:00
Anders Borch
759f91b066 Add name, company and pipe styling 2023-04-13 10:54:51 +02:00
Anders Borch
f5b16c7f6d Rename People type to Person 2023-04-13 10:53:39 +02:00
Anders Borch
c6a60824b3
Merge pull request from twentyhq/cbo-add-table
Add simple styled table
2023-04-13 10:50:08 +02:00
Anders Borch
5619078abd Hide table footer when all groups are empty 2023-04-13 10:26:09 +02:00
Anders Borch
7887e724d5 Add people styling
* Add styled PeopleHeader tag
* Add icon prefix to view name
2023-04-13 10:26:08 +02:00
Anders Borch
7111f99cff Add table styling 2023-04-12 19:24:35 +02:00
Charles Bochet
93fb5896b8 Setup Hasura locally 2023-04-12 15:54:16 +02:00
Anders Borch
b7e43de670 Add icon property to table. 2023-04-12 13:30:13 +02:00
Charles Bochet
cb3a209380 Setting up first table in frontend 2023-04-12 11:39:46 +02:00
Charles Bochet
b629d48cc5 Upgrade storybook version 2023-04-10 21:31:55 +00:00
Charles Bochet
f25f80c199 Implement new UI 2023-04-10 18:04:49 +02:00
Charles Bochet
dc28c97df6 Refresh install scripts 2023-04-05 15:01:20 +02:00
Charles Bochet
c2833cad53 Simplify infrastructure to one container 2023-03-06 19:13:59 +01:00
Charles Bochet
d58af82c51 Separate auth0 users depending on tenants 2023-02-03 20:07:49 +01:00
Charles Bochet
fcdc9aaec4 Create Profile Hooks to fetch current user 2023-02-02 20:40:44 +01:00
Charles Bochet
e9f2e374e8 Add environment variable to build:latest too 2023-01-28 18:34:14 +01:00
Charles Bochet
8e0dc44bf6 Generate Token through Auth0 2023-01-28 10:58:04 +01:00
Charles Bochet
3f63810dc8 This is a dummy commit, to test e2e CI/CD process 2022-12-28 12:10:19 +01:00
Charles Bochet
bc6764b3b9 Initiate circle-ci config 2022-12-28 12:01:09 +01:00
Charles Bochet
fd56c69970 Add content to the Discussion Panel 2022-12-06 11:37:43 +01:00
Charles Bochet
b4032d508d Add Plugin Panel 2022-12-05 22:59:56 +01:00
Charles Bochet
374573871c Move stories and tests inside each component folders 2022-12-05 21:56:53 +01:00
Charles Bochet
92267701ff Rename tabs to Inbox, Contacts, Insights 2022-12-05 21:47:17 +01:00
Charles Bochet
235ae1859d Add Task list on Tasks page 2022-12-05 00:49:45 +01:00
Charles Bochet
0f2d8a556e Add Navbar component, emotion for css and storybook 2022-12-04 22:59:30 +01:00
Charles Bochet
eba76274c6 Add Routing on the app 2022-12-02 12:39:15 +01:00
Charles Bochet
f685be3d22 Migrate to Typescript, add prettier and add linter 2022-12-02 12:06:22 +01:00
Charles Bochet
cfc3a37e1f Setup Nest and React projects 2022-12-01 15:58:08 +01:00