From 8684a8d5179fb2713de20d8f0464270165850c63 Mon Sep 17 00:00:00 2001 From: Charles Bochet Date: Sat, 1 Jul 2023 02:09:49 +0300 Subject: [PATCH] Fix hotkeys blocking comments (#487) * Fix hotkeys blocking comments * Fix tests --- .../ui/layout/right-drawer/components/RightDrawer.tsx | 9 ++++++++- front/src/pages/auth/__stories__/Index.stories.tsx | 11 ++++++++++- .../pages/auth/__stories__/PasswordLogin.stories.tsx | 11 ++++++++++- .../person/person-create-many-company.input.ts | 4 ++-- .../person/person-create-many-workspace.input.ts | 4 ++-- .../@generated/person/person-create-many.input.ts | 4 ++-- .../person/person-create-without-company.input.ts | 4 ++-- .../person/person-create-without-workspace.input.ts | 4 ++-- .../src/core/@generated/person/person-create.input.ts | 4 ++-- .../core/@generated/person/person-group-by.output.ts | 4 ++-- .../@generated/person/person-max-aggregate.output.ts | 4 ++-- .../@generated/person/person-min-aggregate.output.ts | 4 ++-- .../person-unchecked-create-without-company.input.ts | 4 ++-- ...person-unchecked-create-without-workspace.input.ts | 4 ++-- .../person/person-unchecked-create.input.ts | 4 ++-- server/src/database/schema.prisma | 4 ++-- 16 files changed, 54 insertions(+), 29 deletions(-) diff --git a/front/src/modules/ui/layout/right-drawer/components/RightDrawer.tsx b/front/src/modules/ui/layout/right-drawer/components/RightDrawer.tsx index 4589e9d3d..78292cff5 100644 --- a/front/src/modules/ui/layout/right-drawer/components/RightDrawer.tsx +++ b/front/src/modules/ui/layout/right-drawer/components/RightDrawer.tsx @@ -1,6 +1,8 @@ +import { useEffect } from 'react'; import styled from '@emotion/styled'; import { useRecoilState } from 'recoil'; +import { captureHotkeyTypeInFocusState } from '@/hotkeys/states/captureHotkeyTypeInFocusState'; import { isDefined } from '@/utils/type-guards/isDefined'; import { Panel } from '../../Panel'; @@ -16,9 +18,14 @@ const StyledRightDrawer = styled.div` `; export function RightDrawer() { + const [, setCaptureHotkeyTypeInFocus] = useRecoilState( + captureHotkeyTypeInFocusState, + ); const [isRightDrawerOpen] = useRecoilState(isRightDrawerOpenState); const [rightDrawerPage] = useRecoilState(rightDrawerPageState); - + useEffect(() => { + setCaptureHotkeyTypeInFocus(isRightDrawerOpen); + }, [isRightDrawerOpen, setCaptureHotkeyTypeInFocus]); if (!isRightDrawerOpen || !isDefined(rightDrawerPage)) { return <>; } diff --git a/front/src/pages/auth/__stories__/Index.stories.tsx b/front/src/pages/auth/__stories__/Index.stories.tsx index 7d0919f7b..ee2ba5196 100644 --- a/front/src/pages/auth/__stories__/Index.stories.tsx +++ b/front/src/pages/auth/__stories__/Index.stories.tsx @@ -1,5 +1,7 @@ import type { Meta, StoryObj } from '@storybook/react'; +import { AuthModal } from '@/auth/components/ui/Modal'; +import { AuthLayout } from '@/ui/layout/AuthLayout'; import { graphqlMocks } from '~/testing/graphqlMocks'; import { getRenderWrapperForPage } from '~/testing/renderWrappers'; @@ -15,7 +17,14 @@ export default meta; export type Story = StoryObj; export const Default: Story = { - render: getRenderWrapperForPage(, '/auth'), + render: getRenderWrapperForPage( + + + + + , + '/auth', + ), parameters: { msw: graphqlMocks, }, diff --git a/front/src/pages/auth/__stories__/PasswordLogin.stories.tsx b/front/src/pages/auth/__stories__/PasswordLogin.stories.tsx index 05ace005a..c85c99767 100644 --- a/front/src/pages/auth/__stories__/PasswordLogin.stories.tsx +++ b/front/src/pages/auth/__stories__/PasswordLogin.stories.tsx @@ -1,5 +1,7 @@ import type { Meta, StoryObj } from '@storybook/react'; +import { AuthModal } from '@/auth/components/ui/Modal'; +import { AuthLayout } from '@/ui/layout/AuthLayout'; import { graphqlMocks } from '~/testing/graphqlMocks'; import { getRenderWrapperForPage } from '~/testing/renderWrappers'; @@ -15,7 +17,14 @@ export default meta; export type Story = StoryObj; export const Default: Story = { - render: getRenderWrapperForPage(, '/auth/password-login'), + render: getRenderWrapperForPage( + + + + + , + '/auth/password-login', + ), parameters: { msw: graphqlMocks, }, diff --git a/server/src/core/@generated/person/person-create-many-company.input.ts b/server/src/core/@generated/person/person-create-many-company.input.ts index a092e8a00..96153739b 100644 --- a/server/src/core/@generated/person/person-create-many-company.input.ts +++ b/server/src/core/@generated/person/person-create-many-company.input.ts @@ -20,11 +20,11 @@ export class PersonCreateManyCompanyInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-create-many-workspace.input.ts b/server/src/core/@generated/person/person-create-many-workspace.input.ts index 8e0888752..a83329065 100644 --- a/server/src/core/@generated/person/person-create-many-workspace.input.ts +++ b/server/src/core/@generated/person/person-create-many-workspace.input.ts @@ -20,11 +20,11 @@ export class PersonCreateManyWorkspaceInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-create-many.input.ts b/server/src/core/@generated/person/person-create-many.input.ts index 0b19eaf79..02e40eee7 100644 --- a/server/src/core/@generated/person/person-create-many.input.ts +++ b/server/src/core/@generated/person/person-create-many.input.ts @@ -20,11 +20,11 @@ export class PersonCreateManyInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-create-without-company.input.ts b/server/src/core/@generated/person/person-create-without-company.input.ts index 0fe3783ea..fbc7fe66f 100644 --- a/server/src/core/@generated/person/person-create-without-company.input.ts +++ b/server/src/core/@generated/person/person-create-without-company.input.ts @@ -21,11 +21,11 @@ export class PersonCreateWithoutCompanyInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-create-without-workspace.input.ts b/server/src/core/@generated/person/person-create-without-workspace.input.ts index c91dc2640..fe2714abd 100644 --- a/server/src/core/@generated/person/person-create-without-workspace.input.ts +++ b/server/src/core/@generated/person/person-create-without-workspace.input.ts @@ -21,11 +21,11 @@ export class PersonCreateWithoutWorkspaceInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-create.input.ts b/server/src/core/@generated/person/person-create.input.ts index bf3c3ba3d..ab931df50 100644 --- a/server/src/core/@generated/person/person-create.input.ts +++ b/server/src/core/@generated/person/person-create.input.ts @@ -22,11 +22,11 @@ export class PersonCreateInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-group-by.output.ts b/server/src/core/@generated/person/person-group-by.output.ts index 239217c20..c38310a97 100644 --- a/server/src/core/@generated/person/person-group-by.output.ts +++ b/server/src/core/@generated/person/person-group-by.output.ts @@ -23,11 +23,11 @@ export class PersonGroupBy { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-max-aggregate.output.ts b/server/src/core/@generated/person/person-max-aggregate.output.ts index 55e6e0eb8..a9b01b9db 100644 --- a/server/src/core/@generated/person/person-max-aggregate.output.ts +++ b/server/src/core/@generated/person/person-max-aggregate.output.ts @@ -20,11 +20,11 @@ export class PersonMaxAggregate { lastName?: string; @Field(() => String, {nullable:true}) - @Validator.IsEmail() + @Validator.IsString() email?: string; @Field(() => String, {nullable:true}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone?: string; @Field(() => String, {nullable:true}) diff --git a/server/src/core/@generated/person/person-min-aggregate.output.ts b/server/src/core/@generated/person/person-min-aggregate.output.ts index ab98cf27e..d3aeb355e 100644 --- a/server/src/core/@generated/person/person-min-aggregate.output.ts +++ b/server/src/core/@generated/person/person-min-aggregate.output.ts @@ -20,11 +20,11 @@ export class PersonMinAggregate { lastName?: string; @Field(() => String, {nullable:true}) - @Validator.IsEmail() + @Validator.IsString() email?: string; @Field(() => String, {nullable:true}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone?: string; @Field(() => String, {nullable:true}) diff --git a/server/src/core/@generated/person/person-unchecked-create-without-company.input.ts b/server/src/core/@generated/person/person-unchecked-create-without-company.input.ts index 96a7584c5..077cabde1 100644 --- a/server/src/core/@generated/person/person-unchecked-create-without-company.input.ts +++ b/server/src/core/@generated/person/person-unchecked-create-without-company.input.ts @@ -20,11 +20,11 @@ export class PersonUncheckedCreateWithoutCompanyInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-unchecked-create-without-workspace.input.ts b/server/src/core/@generated/person/person-unchecked-create-without-workspace.input.ts index ac650d40a..22fbf994a 100644 --- a/server/src/core/@generated/person/person-unchecked-create-without-workspace.input.ts +++ b/server/src/core/@generated/person/person-unchecked-create-without-workspace.input.ts @@ -20,11 +20,11 @@ export class PersonUncheckedCreateWithoutWorkspaceInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/core/@generated/person/person-unchecked-create.input.ts b/server/src/core/@generated/person/person-unchecked-create.input.ts index 33abe7331..10317e1e9 100644 --- a/server/src/core/@generated/person/person-unchecked-create.input.ts +++ b/server/src/core/@generated/person/person-unchecked-create.input.ts @@ -20,11 +20,11 @@ export class PersonUncheckedCreateInput { lastName!: string; @Field(() => String, {nullable:false}) - @Validator.IsEmail() + @Validator.IsString() email!: string; @Field(() => String, {nullable:false}) - @Validator.IsPhoneNumber() + @Validator.IsString() phone!: string; @Field(() => String, {nullable:false}) diff --git a/server/src/database/schema.prisma b/server/src/database/schema.prisma index d10a084a1..8aa186acc 100644 --- a/server/src/database/schema.prisma +++ b/server/src/database/schema.prisma @@ -275,9 +275,9 @@ model Person { firstName String /// @Validator.IsString() lastName String - /// @Validator.IsEmail() + /// @Validator.IsString() email String - /// @Validator.IsPhoneNumber() + /// @Validator.IsString() phone String /// @Validator.IsString() city String