Update company card (#512)
* Add card rows * WIP - add amount * Refactor board state to separate pipeline progress data and company data * Add migration and generated code * Pass pipeline progress properties to the comapny card * WIP-editable * Enable amount edition * Nits * Remove useless import * Fix empty board bug * Use cell for editable values on company card * Add fields * Enable edition for closeDate * Add dummy edits for recurring and probability * Nits * remove useless fields * Nits * Fix user provider * Add generated code * Fix nits, reorder migrations, fix login * Fix tests * Fix lint
This commit is contained in:
@ -51,8 +51,6 @@
|
|||||||
"storybook:test": "test-storybook",
|
"storybook:test": "test-storybook",
|
||||||
"storybook:build": "storybook build -s public",
|
"storybook:build": "storybook build -s public",
|
||||||
"storybook:coverage": "test-storybook --coverage && npx nyc report --reporter=lcov -t coverage/storybook --report-dir coverage/storybook --check-coverage",
|
"storybook:coverage": "test-storybook --coverage && npx nyc report --reporter=lcov -t coverage/storybook --report-dir coverage/storybook --check-coverage",
|
||||||
"build-storybook": "yarn storybook:build",
|
|
||||||
"coverage-storybook": "yarn storybook:coverage",
|
|
||||||
"graphql:generate": "dotenv cross-var graphql-codegen --config codegen.js",
|
"graphql:generate": "dotenv cross-var graphql-codegen --config codegen.js",
|
||||||
"chromatic": "dotenv cross-var npx chromatic --project-token=$CHROMATIC_PROJECT_TOKEN"
|
"chromatic": "dotenv cross-var npx chromatic --project-token=$CHROMATIC_PROJECT_TOKEN"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -756,11 +756,11 @@ export type CompanyOrderByRelationAggregateInput = {
|
|||||||
|
|
||||||
export type CompanyOrderByWithRelationInput = {
|
export type CompanyOrderByWithRelationInput = {
|
||||||
accountOwner?: InputMaybe<UserOrderByWithRelationInput>;
|
accountOwner?: InputMaybe<UserOrderByWithRelationInput>;
|
||||||
accountOwnerId?: InputMaybe<SortOrder>;
|
accountOwnerId?: InputMaybe<SortOrderInput>;
|
||||||
address?: InputMaybe<SortOrder>;
|
address?: InputMaybe<SortOrder>;
|
||||||
createdAt?: InputMaybe<SortOrder>;
|
createdAt?: InputMaybe<SortOrder>;
|
||||||
domainName?: InputMaybe<SortOrder>;
|
domainName?: InputMaybe<SortOrder>;
|
||||||
employees?: InputMaybe<SortOrder>;
|
employees?: InputMaybe<SortOrderInput>;
|
||||||
id?: InputMaybe<SortOrder>;
|
id?: InputMaybe<SortOrder>;
|
||||||
name?: InputMaybe<SortOrder>;
|
name?: InputMaybe<SortOrder>;
|
||||||
people?: InputMaybe<PersonOrderByRelationAggregateInput>;
|
people?: InputMaybe<PersonOrderByRelationAggregateInput>;
|
||||||
@ -1247,6 +1247,11 @@ export type NullableStringFieldUpdateOperationsInput = {
|
|||||||
set?: InputMaybe<Scalars['String']>;
|
set?: InputMaybe<Scalars['String']>;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export enum NullsOrder {
|
||||||
|
First = 'first',
|
||||||
|
Last = 'last'
|
||||||
|
}
|
||||||
|
|
||||||
export type Person = {
|
export type Person = {
|
||||||
__typename?: 'Person';
|
__typename?: 'Person';
|
||||||
_commentCount: Scalars['Int'];
|
_commentCount: Scalars['Int'];
|
||||||
@ -1327,7 +1332,7 @@ export type PersonOrderByRelationAggregateInput = {
|
|||||||
export type PersonOrderByWithRelationInput = {
|
export type PersonOrderByWithRelationInput = {
|
||||||
city?: InputMaybe<SortOrder>;
|
city?: InputMaybe<SortOrder>;
|
||||||
company?: InputMaybe<CompanyOrderByWithRelationInput>;
|
company?: InputMaybe<CompanyOrderByWithRelationInput>;
|
||||||
companyId?: InputMaybe<SortOrder>;
|
companyId?: InputMaybe<SortOrderInput>;
|
||||||
createdAt?: InputMaybe<SortOrder>;
|
createdAt?: InputMaybe<SortOrder>;
|
||||||
email?: InputMaybe<SortOrder>;
|
email?: InputMaybe<SortOrder>;
|
||||||
firstName?: InputMaybe<SortOrder>;
|
firstName?: InputMaybe<SortOrder>;
|
||||||
@ -1535,6 +1540,8 @@ export type PipelineOrderByWithRelationInput = {
|
|||||||
|
|
||||||
export type PipelineProgress = {
|
export type PipelineProgress = {
|
||||||
__typename?: 'PipelineProgress';
|
__typename?: 'PipelineProgress';
|
||||||
|
amount?: Maybe<Scalars['Int']>;
|
||||||
|
closeDate?: Maybe<Scalars['DateTime']>;
|
||||||
createdAt: Scalars['DateTime'];
|
createdAt: Scalars['DateTime'];
|
||||||
id: Scalars['ID'];
|
id: Scalars['ID'];
|
||||||
pipeline: Pipeline;
|
pipeline: Pipeline;
|
||||||
@ -1547,6 +1554,8 @@ export type PipelineProgress = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateInput = {
|
export type PipelineProgressCreateInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
|
closeDate?: InputMaybe<Scalars['DateTime']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
||||||
@ -1557,6 +1566,7 @@ export type PipelineProgressCreateInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateManyPipelineInput = {
|
export type PipelineProgressCreateManyPipelineInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipelineStageId: Scalars['String'];
|
pipelineStageId: Scalars['String'];
|
||||||
@ -1571,6 +1581,7 @@ export type PipelineProgressCreateManyPipelineInputEnvelope = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateManyPipelineStageInput = {
|
export type PipelineProgressCreateManyPipelineStageInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipelineId: Scalars['String'];
|
pipelineId: Scalars['String'];
|
||||||
@ -1585,6 +1596,7 @@ export type PipelineProgressCreateManyPipelineStageInputEnvelope = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateManyWorkspaceInput = {
|
export type PipelineProgressCreateManyWorkspaceInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipelineId: Scalars['String'];
|
pipelineId: Scalars['String'];
|
||||||
@ -1629,6 +1641,7 @@ export type PipelineProgressCreateOrConnectWithoutWorkspaceInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateWithoutPipelineInput = {
|
export type PipelineProgressCreateWithoutPipelineInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipelineStage: PipelineStageCreateNestedOneWithoutPipelineProgressesInput;
|
pipelineStage: PipelineStageCreateNestedOneWithoutPipelineProgressesInput;
|
||||||
@ -1638,6 +1651,7 @@ export type PipelineProgressCreateWithoutPipelineInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateWithoutPipelineStageInput = {
|
export type PipelineProgressCreateWithoutPipelineStageInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
||||||
@ -1647,6 +1661,7 @@ export type PipelineProgressCreateWithoutPipelineStageInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressCreateWithoutWorkspaceInput = {
|
export type PipelineProgressCreateWithoutWorkspaceInput = {
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
createdAt?: InputMaybe<Scalars['DateTime']>;
|
createdAt?: InputMaybe<Scalars['DateTime']>;
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
pipeline: PipelineCreateNestedOneWithoutPipelineProgressesInput;
|
||||||
@ -1667,6 +1682,8 @@ export type PipelineProgressOrderByRelationAggregateInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressOrderByWithRelationInput = {
|
export type PipelineProgressOrderByWithRelationInput = {
|
||||||
|
amount?: InputMaybe<SortOrderInput>;
|
||||||
|
closeDate?: InputMaybe<SortOrderInput>;
|
||||||
createdAt?: InputMaybe<SortOrder>;
|
createdAt?: InputMaybe<SortOrder>;
|
||||||
id?: InputMaybe<SortOrder>;
|
id?: InputMaybe<SortOrder>;
|
||||||
pipeline?: InputMaybe<PipelineOrderByWithRelationInput>;
|
pipeline?: InputMaybe<PipelineOrderByWithRelationInput>;
|
||||||
@ -1679,6 +1696,8 @@ export type PipelineProgressOrderByWithRelationInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export enum PipelineProgressScalarFieldEnum {
|
export enum PipelineProgressScalarFieldEnum {
|
||||||
|
Amount = 'amount',
|
||||||
|
CloseDate = 'closeDate',
|
||||||
CreatedAt = 'createdAt',
|
CreatedAt = 'createdAt',
|
||||||
DeletedAt = 'deletedAt',
|
DeletedAt = 'deletedAt',
|
||||||
Id = 'id',
|
Id = 'id',
|
||||||
@ -1694,6 +1713,7 @@ export type PipelineProgressScalarWhereInput = {
|
|||||||
AND?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
AND?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
||||||
NOT?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
NOT?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
||||||
OR?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
OR?: InputMaybe<Array<PipelineProgressScalarWhereInput>>;
|
||||||
|
amount?: InputMaybe<IntNullableFilter>;
|
||||||
createdAt?: InputMaybe<DateTimeFilter>;
|
createdAt?: InputMaybe<DateTimeFilter>;
|
||||||
id?: InputMaybe<StringFilter>;
|
id?: InputMaybe<StringFilter>;
|
||||||
pipelineId?: InputMaybe<StringFilter>;
|
pipelineId?: InputMaybe<StringFilter>;
|
||||||
@ -1704,6 +1724,8 @@ export type PipelineProgressScalarWhereInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressUpdateInput = {
|
export type PipelineProgressUpdateInput = {
|
||||||
|
amount?: InputMaybe<NullableIntFieldUpdateOperationsInput>;
|
||||||
|
closeDate?: InputMaybe<NullableDateTimeFieldUpdateOperationsInput>;
|
||||||
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
||||||
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
||||||
@ -1714,6 +1736,7 @@ export type PipelineProgressUpdateInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressUpdateManyMutationInput = {
|
export type PipelineProgressUpdateManyMutationInput = {
|
||||||
|
amount?: InputMaybe<NullableIntFieldUpdateOperationsInput>;
|
||||||
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
||||||
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
progressableId?: InputMaybe<StringFieldUpdateOperationsInput>;
|
progressableId?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
@ -1794,6 +1817,7 @@ export type PipelineProgressUpdateWithWhereUniqueWithoutWorkspaceInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressUpdateWithoutPipelineInput = {
|
export type PipelineProgressUpdateWithoutPipelineInput = {
|
||||||
|
amount?: InputMaybe<NullableIntFieldUpdateOperationsInput>;
|
||||||
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
||||||
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
pipelineStage?: InputMaybe<PipelineStageUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
pipelineStage?: InputMaybe<PipelineStageUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
||||||
@ -1803,6 +1827,7 @@ export type PipelineProgressUpdateWithoutPipelineInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressUpdateWithoutPipelineStageInput = {
|
export type PipelineProgressUpdateWithoutPipelineStageInput = {
|
||||||
|
amount?: InputMaybe<NullableIntFieldUpdateOperationsInput>;
|
||||||
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
||||||
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
||||||
@ -1812,6 +1837,7 @@ export type PipelineProgressUpdateWithoutPipelineStageInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type PipelineProgressUpdateWithoutWorkspaceInput = {
|
export type PipelineProgressUpdateWithoutWorkspaceInput = {
|
||||||
|
amount?: InputMaybe<NullableIntFieldUpdateOperationsInput>;
|
||||||
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
createdAt?: InputMaybe<DateTimeFieldUpdateOperationsInput>;
|
||||||
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
id?: InputMaybe<StringFieldUpdateOperationsInput>;
|
||||||
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
pipeline?: InputMaybe<PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput>;
|
||||||
@ -1843,6 +1869,8 @@ export type PipelineProgressWhereInput = {
|
|||||||
AND?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
AND?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
||||||
NOT?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
NOT?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
||||||
OR?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
OR?: InputMaybe<Array<PipelineProgressWhereInput>>;
|
||||||
|
amount?: InputMaybe<IntNullableFilter>;
|
||||||
|
closeDate?: InputMaybe<DateTimeNullableFilter>;
|
||||||
createdAt?: InputMaybe<DateTimeFilter>;
|
createdAt?: InputMaybe<DateTimeFilter>;
|
||||||
id?: InputMaybe<StringFilter>;
|
id?: InputMaybe<StringFilter>;
|
||||||
pipeline?: InputMaybe<PipelineRelationFilter>;
|
pipeline?: InputMaybe<PipelineRelationFilter>;
|
||||||
@ -2328,6 +2356,11 @@ export enum SortOrder {
|
|||||||
Desc = 'desc'
|
Desc = 'desc'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export type SortOrderInput = {
|
||||||
|
nulls?: InputMaybe<NullsOrder>;
|
||||||
|
sort: SortOrder;
|
||||||
|
};
|
||||||
|
|
||||||
export type StringFieldUpdateOperationsInput = {
|
export type StringFieldUpdateOperationsInput = {
|
||||||
set?: InputMaybe<Scalars['String']>;
|
set?: InputMaybe<Scalars['String']>;
|
||||||
};
|
};
|
||||||
@ -2443,7 +2476,7 @@ export type UserCreateWithoutWorkspaceMemberInput = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export type UserOrderByWithRelationInput = {
|
export type UserOrderByWithRelationInput = {
|
||||||
avatarUrl?: InputMaybe<SortOrder>;
|
avatarUrl?: InputMaybe<SortOrderInput>;
|
||||||
comments?: InputMaybe<CommentOrderByRelationAggregateInput>;
|
comments?: InputMaybe<CommentOrderByRelationAggregateInput>;
|
||||||
companies?: InputMaybe<CompanyOrderByRelationAggregateInput>;
|
companies?: InputMaybe<CompanyOrderByRelationAggregateInput>;
|
||||||
createdAt?: InputMaybe<SortOrder>;
|
createdAt?: InputMaybe<SortOrder>;
|
||||||
@ -2453,10 +2486,10 @@ export type UserOrderByWithRelationInput = {
|
|||||||
firstName?: InputMaybe<SortOrder>;
|
firstName?: InputMaybe<SortOrder>;
|
||||||
id?: InputMaybe<SortOrder>;
|
id?: InputMaybe<SortOrder>;
|
||||||
lastName?: InputMaybe<SortOrder>;
|
lastName?: InputMaybe<SortOrder>;
|
||||||
lastSeen?: InputMaybe<SortOrder>;
|
lastSeen?: InputMaybe<SortOrderInput>;
|
||||||
locale?: InputMaybe<SortOrder>;
|
locale?: InputMaybe<SortOrder>;
|
||||||
metadata?: InputMaybe<SortOrder>;
|
metadata?: InputMaybe<SortOrderInput>;
|
||||||
phoneNumber?: InputMaybe<SortOrder>;
|
phoneNumber?: InputMaybe<SortOrderInput>;
|
||||||
updatedAt?: InputMaybe<SortOrder>;
|
updatedAt?: InputMaybe<SortOrder>;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -2912,15 +2945,24 @@ export type GetPipelinesQueryVariables = Exact<{
|
|||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type GetPipelinesQuery = { __typename?: 'Query', findManyPipeline: Array<{ __typename?: 'Pipeline', id: string, name: string, pipelineProgressableType: PipelineProgressableType, pipelineStages?: Array<{ __typename?: 'PipelineStage', id: string, name: string, color: string, pipelineProgresses?: Array<{ __typename?: 'PipelineProgress', id: string, progressableType: PipelineProgressableType, progressableId: string }> | null }> | null }> };
|
export type GetPipelinesQuery = { __typename?: 'Query', findManyPipeline: Array<{ __typename?: 'Pipeline', id: string, name: string, pipelineProgressableType: PipelineProgressableType, pipelineStages?: Array<{ __typename?: 'PipelineStage', id: string, name: string, color: string, pipelineProgresses?: Array<{ __typename?: 'PipelineProgress', id: string, progressableType: PipelineProgressableType, progressableId: string, amount?: number | null, closeDate?: string | null }> | null }> | null }> };
|
||||||
|
|
||||||
export type UpdateOnePipelineProgressMutationVariables = Exact<{
|
export type UpdateOnePipelineProgressMutationVariables = Exact<{
|
||||||
|
id?: InputMaybe<Scalars['String']>;
|
||||||
|
amount?: InputMaybe<Scalars['Int']>;
|
||||||
|
closeDate?: InputMaybe<Scalars['DateTime']>;
|
||||||
|
}>;
|
||||||
|
|
||||||
|
|
||||||
|
export type UpdateOnePipelineProgressMutation = { __typename?: 'Mutation', updateOnePipelineProgress?: { __typename?: 'PipelineProgress', id: string } | null };
|
||||||
|
|
||||||
|
export type UpdateOnePipelineProgressStageMutationVariables = Exact<{
|
||||||
id?: InputMaybe<Scalars['String']>;
|
id?: InputMaybe<Scalars['String']>;
|
||||||
pipelineStageId?: InputMaybe<Scalars['String']>;
|
pipelineStageId?: InputMaybe<Scalars['String']>;
|
||||||
}>;
|
}>;
|
||||||
|
|
||||||
|
|
||||||
export type UpdateOnePipelineProgressMutation = { __typename?: 'Mutation', updateOnePipelineProgress?: { __typename?: 'PipelineProgress', id: string } | null };
|
export type UpdateOnePipelineProgressStageMutation = { __typename?: 'Mutation', updateOnePipelineProgress?: { __typename?: 'PipelineProgress', id: string } | null };
|
||||||
|
|
||||||
export type CreateOnePipelineProgressMutationVariables = Exact<{
|
export type CreateOnePipelineProgressMutationVariables = Exact<{
|
||||||
uuid: Scalars['String'];
|
uuid: Scalars['String'];
|
||||||
@ -3932,6 +3974,8 @@ export const GetPipelinesDocument = gql`
|
|||||||
id
|
id
|
||||||
progressableType
|
progressableType
|
||||||
progressableId
|
progressableId
|
||||||
|
amount
|
||||||
|
closeDate
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -3966,10 +4010,10 @@ export type GetPipelinesQueryHookResult = ReturnType<typeof useGetPipelinesQuery
|
|||||||
export type GetPipelinesLazyQueryHookResult = ReturnType<typeof useGetPipelinesLazyQuery>;
|
export type GetPipelinesLazyQueryHookResult = ReturnType<typeof useGetPipelinesLazyQuery>;
|
||||||
export type GetPipelinesQueryResult = Apollo.QueryResult<GetPipelinesQuery, GetPipelinesQueryVariables>;
|
export type GetPipelinesQueryResult = Apollo.QueryResult<GetPipelinesQuery, GetPipelinesQueryVariables>;
|
||||||
export const UpdateOnePipelineProgressDocument = gql`
|
export const UpdateOnePipelineProgressDocument = gql`
|
||||||
mutation UpdateOnePipelineProgress($id: String, $pipelineStageId: String) {
|
mutation UpdateOnePipelineProgress($id: String, $amount: Int, $closeDate: DateTime) {
|
||||||
updateOnePipelineProgress(
|
updateOnePipelineProgress(
|
||||||
where: {id: $id}
|
where: {id: $id}
|
||||||
data: {pipelineStage: {connect: {id: $pipelineStageId}}}
|
data: {amount: {set: $amount}, closeDate: {set: $closeDate}}
|
||||||
) {
|
) {
|
||||||
id
|
id
|
||||||
}
|
}
|
||||||
@ -3991,7 +4035,8 @@ export type UpdateOnePipelineProgressMutationFn = Apollo.MutationFunction<Update
|
|||||||
* const [updateOnePipelineProgressMutation, { data, loading, error }] = useUpdateOnePipelineProgressMutation({
|
* const [updateOnePipelineProgressMutation, { data, loading, error }] = useUpdateOnePipelineProgressMutation({
|
||||||
* variables: {
|
* variables: {
|
||||||
* id: // value for 'id'
|
* id: // value for 'id'
|
||||||
* pipelineStageId: // value for 'pipelineStageId'
|
* amount: // value for 'amount'
|
||||||
|
* closeDate: // value for 'closeDate'
|
||||||
* },
|
* },
|
||||||
* });
|
* });
|
||||||
*/
|
*/
|
||||||
@ -4002,6 +4047,43 @@ export function useUpdateOnePipelineProgressMutation(baseOptions?: Apollo.Mutati
|
|||||||
export type UpdateOnePipelineProgressMutationHookResult = ReturnType<typeof useUpdateOnePipelineProgressMutation>;
|
export type UpdateOnePipelineProgressMutationHookResult = ReturnType<typeof useUpdateOnePipelineProgressMutation>;
|
||||||
export type UpdateOnePipelineProgressMutationResult = Apollo.MutationResult<UpdateOnePipelineProgressMutation>;
|
export type UpdateOnePipelineProgressMutationResult = Apollo.MutationResult<UpdateOnePipelineProgressMutation>;
|
||||||
export type UpdateOnePipelineProgressMutationOptions = Apollo.BaseMutationOptions<UpdateOnePipelineProgressMutation, UpdateOnePipelineProgressMutationVariables>;
|
export type UpdateOnePipelineProgressMutationOptions = Apollo.BaseMutationOptions<UpdateOnePipelineProgressMutation, UpdateOnePipelineProgressMutationVariables>;
|
||||||
|
export const UpdateOnePipelineProgressStageDocument = gql`
|
||||||
|
mutation UpdateOnePipelineProgressStage($id: String, $pipelineStageId: String) {
|
||||||
|
updateOnePipelineProgress(
|
||||||
|
where: {id: $id}
|
||||||
|
data: {pipelineStage: {connect: {id: $pipelineStageId}}}
|
||||||
|
) {
|
||||||
|
id
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
export type UpdateOnePipelineProgressStageMutationFn = Apollo.MutationFunction<UpdateOnePipelineProgressStageMutation, UpdateOnePipelineProgressStageMutationVariables>;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* __useUpdateOnePipelineProgressStageMutation__
|
||||||
|
*
|
||||||
|
* To run a mutation, you first call `useUpdateOnePipelineProgressStageMutation` within a React component and pass it any options that fit your needs.
|
||||||
|
* When your component renders, `useUpdateOnePipelineProgressStageMutation` returns a tuple that includes:
|
||||||
|
* - A mutate function that you can call at any time to execute the mutation
|
||||||
|
* - An object with fields that represent the current status of the mutation's execution
|
||||||
|
*
|
||||||
|
* @param baseOptions options that will be passed into the mutation, supported options are listed on: https://www.apollographql.com/docs/react/api/react-hooks/#options-2;
|
||||||
|
*
|
||||||
|
* @example
|
||||||
|
* const [updateOnePipelineProgressStageMutation, { data, loading, error }] = useUpdateOnePipelineProgressStageMutation({
|
||||||
|
* variables: {
|
||||||
|
* id: // value for 'id'
|
||||||
|
* pipelineStageId: // value for 'pipelineStageId'
|
||||||
|
* },
|
||||||
|
* });
|
||||||
|
*/
|
||||||
|
export function useUpdateOnePipelineProgressStageMutation(baseOptions?: Apollo.MutationHookOptions<UpdateOnePipelineProgressStageMutation, UpdateOnePipelineProgressStageMutationVariables>) {
|
||||||
|
const options = {...defaultOptions, ...baseOptions}
|
||||||
|
return Apollo.useMutation<UpdateOnePipelineProgressStageMutation, UpdateOnePipelineProgressStageMutationVariables>(UpdateOnePipelineProgressStageDocument, options);
|
||||||
|
}
|
||||||
|
export type UpdateOnePipelineProgressStageMutationHookResult = ReturnType<typeof useUpdateOnePipelineProgressStageMutation>;
|
||||||
|
export type UpdateOnePipelineProgressStageMutationResult = Apollo.MutationResult<UpdateOnePipelineProgressStageMutation>;
|
||||||
|
export type UpdateOnePipelineProgressStageMutationOptions = Apollo.BaseMutationOptions<UpdateOnePipelineProgressStageMutation, UpdateOnePipelineProgressStageMutationVariables>;
|
||||||
export const CreateOnePipelineProgressDocument = gql`
|
export const CreateOnePipelineProgressDocument = gql`
|
||||||
mutation CreateOnePipelineProgress($uuid: String!, $entityType: PipelineProgressableType!, $entityId: String!, $pipelineId: String!, $pipelineStageId: String!) {
|
mutation CreateOnePipelineProgress($uuid: String!, $entityType: PipelineProgressableType!, $entityId: String!, $pipelineId: String!, $pipelineStageId: String!) {
|
||||||
createOnePipelineProgress(
|
createOnePipelineProgress(
|
||||||
|
|||||||
@ -23,17 +23,17 @@ const root = ReactDOM.createRoot(
|
|||||||
root.render(
|
root.render(
|
||||||
<RecoilRoot>
|
<RecoilRoot>
|
||||||
<ApolloProvider>
|
<ApolloProvider>
|
||||||
<BrowserRouter>
|
<AppThemeProvider>
|
||||||
<AppThemeProvider>
|
<StrictMode>
|
||||||
<StrictMode>
|
<UserProvider>
|
||||||
<UserProvider>
|
<BrowserRouter>
|
||||||
<ClientConfigProvider>
|
<ClientConfigProvider>
|
||||||
<App />
|
<App />
|
||||||
</ClientConfigProvider>
|
</ClientConfigProvider>
|
||||||
</UserProvider>
|
</BrowserRouter>
|
||||||
</StrictMode>
|
</UserProvider>
|
||||||
</AppThemeProvider>
|
</StrictMode>
|
||||||
</BrowserRouter>
|
</AppThemeProvider>
|
||||||
</ApolloProvider>
|
</ApolloProvider>
|
||||||
</RecoilRoot>,
|
</RecoilRoot>,
|
||||||
);
|
);
|
||||||
|
|||||||
@ -10,7 +10,7 @@ import {
|
|||||||
import { useRecoilState } from 'recoil';
|
import { useRecoilState } from 'recoil';
|
||||||
|
|
||||||
import { BoardColumn } from '@/ui/components/board/BoardColumn';
|
import { BoardColumn } from '@/ui/components/board/BoardColumn';
|
||||||
import { Company } from '~/generated/graphql';
|
import { Company, PipelineProgress } from '~/generated/graphql';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
Column,
|
Column,
|
||||||
@ -24,10 +24,11 @@ import { selectedBoardItemsState } from '../states/selectedBoardItemsState';
|
|||||||
import { CompanyBoardCard } from './CompanyBoardCard';
|
import { CompanyBoardCard } from './CompanyBoardCard';
|
||||||
import { NewButton } from './NewButton';
|
import { NewButton } from './NewButton';
|
||||||
|
|
||||||
export type CompanyProgress = Pick<
|
export type CompanyProgress = {
|
||||||
Company,
|
company: Pick<Company, 'id' | 'name' | 'domainName'>;
|
||||||
'id' | 'name' | 'domainName' | 'createdAt'
|
pipelineProgress: Pick<PipelineProgress, 'id' | 'amount' | 'closeDate'>;
|
||||||
>;
|
};
|
||||||
|
|
||||||
export type CompanyProgressDict = {
|
export type CompanyProgressDict = {
|
||||||
[key: string]: CompanyProgress;
|
[key: string]: CompanyProgress;
|
||||||
};
|
};
|
||||||
@ -37,7 +38,10 @@ type BoardProps = {
|
|||||||
columns: Omit<Column, 'itemKeys'>[];
|
columns: Omit<Column, 'itemKeys'>[];
|
||||||
initialBoard: Column[];
|
initialBoard: Column[];
|
||||||
initialItems: CompanyProgressDict;
|
initialItems: CompanyProgressDict;
|
||||||
onUpdate?: (itemKey: string, columnId: Column['id']) => Promise<void>;
|
onCardMove?: (itemKey: string, columnId: Column['id']) => Promise<void>;
|
||||||
|
onCardUpdate: (
|
||||||
|
pipelineProgress: Pick<PipelineProgress, 'id' | 'amount' | 'closeDate'>,
|
||||||
|
) => Promise<void>;
|
||||||
};
|
};
|
||||||
|
|
||||||
const StyledPlaceholder = styled.div`
|
const StyledPlaceholder = styled.div`
|
||||||
@ -66,7 +70,8 @@ export function Board({
|
|||||||
columns,
|
columns,
|
||||||
initialBoard,
|
initialBoard,
|
||||||
initialItems,
|
initialItems,
|
||||||
onUpdate,
|
onCardMove,
|
||||||
|
onCardUpdate,
|
||||||
pipelineId,
|
pipelineId,
|
||||||
}: BoardProps) {
|
}: BoardProps) {
|
||||||
const [board, setBoard] = useRecoilState(boardColumnsState);
|
const [board, setBoard] = useRecoilState(boardColumnsState);
|
||||||
@ -79,6 +84,7 @@ export function Board({
|
|||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (isInitialBoardLoaded) return;
|
if (isInitialBoardLoaded) return;
|
||||||
setBoard(initialBoard);
|
setBoard(initialBoard);
|
||||||
|
if (Object.keys(initialItems).length === 0) return;
|
||||||
setBoardItems(initialItems);
|
setBoardItems(initialItems);
|
||||||
setIsInitialBoardLoaded(true);
|
setIsInitialBoardLoaded(true);
|
||||||
}, [
|
}, [
|
||||||
@ -100,13 +106,13 @@ export function Board({
|
|||||||
const destinationColumnId = result.destination?.droppableId;
|
const destinationColumnId = result.destination?.droppableId;
|
||||||
draggedEntityId &&
|
draggedEntityId &&
|
||||||
destinationColumnId &&
|
destinationColumnId &&
|
||||||
onUpdate &&
|
onCardMove &&
|
||||||
(await onUpdate(draggedEntityId, destinationColumnId));
|
(await onCardMove(draggedEntityId, destinationColumnId));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.error(e);
|
console.error(e);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
[board, onUpdate, setBoard],
|
[board, onCardMove, setBoard],
|
||||||
);
|
);
|
||||||
|
|
||||||
function handleSelect(itemKey: string) {
|
function handleSelect(itemKey: string) {
|
||||||
@ -144,8 +150,12 @@ export function Board({
|
|||||||
{...draggableProvided?.draggableProps}
|
{...draggableProvided?.draggableProps}
|
||||||
>
|
>
|
||||||
<CompanyBoardCard
|
<CompanyBoardCard
|
||||||
company={boardItems[itemKey]}
|
company={boardItems[itemKey].company}
|
||||||
|
pipelineProgress={
|
||||||
|
boardItems[itemKey].pipelineProgress
|
||||||
|
}
|
||||||
selected={selectedBoardItems.includes(itemKey)}
|
selected={selectedBoardItems.includes(itemKey)}
|
||||||
|
onCardUpdate={onCardUpdate}
|
||||||
onSelect={() => handleSelect(itemKey)}
|
onSelect={() => handleSelect(itemKey)}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,11 +1,17 @@
|
|||||||
import { useTheme } from '@emotion/react';
|
import { useTheme } from '@emotion/react';
|
||||||
import styled from '@emotion/styled';
|
import styled from '@emotion/styled';
|
||||||
|
import { IconCurrencyDollar } from '@tabler/icons-react';
|
||||||
|
|
||||||
import { Company } from '../../../generated/graphql';
|
import { RecoilScope } from '@/recoil-scope/components/RecoilScope';
|
||||||
import { PersonChip } from '../../people/components/PersonChip';
|
import { EditableDate } from '@/ui/components/editable-cell/types/EditableDate';
|
||||||
|
import { EditableText } from '@/ui/components/editable-cell/types/EditableText';
|
||||||
|
import { CellContext } from '@/ui/tables/states/CellContext';
|
||||||
|
import { RowContext } from '@/ui/tables/states/RowContext';
|
||||||
|
|
||||||
|
import { Company, PipelineProgress } from '../../../generated/graphql';
|
||||||
import { Checkbox } from '../../ui/components/form/Checkbox';
|
import { Checkbox } from '../../ui/components/form/Checkbox';
|
||||||
import { IconCalendarEvent, IconUser, IconUsers } from '../../ui/icons';
|
import { IconCalendarEvent } from '../../ui/icons';
|
||||||
import { getLogoUrlFromDomainName, humanReadableDate } from '../../utils/utils';
|
import { getLogoUrlFromDomainName } from '../../utils/utils';
|
||||||
|
|
||||||
const StyledBoardCard = styled.div<{ selected: boolean }>`
|
const StyledBoardCard = styled.div<{ selected: boolean }>`
|
||||||
background-color: ${({ theme, selected }) =>
|
background-color: ${({ theme, selected }) =>
|
||||||
@ -44,7 +50,6 @@ const StyledBoardCardHeader = styled.div`
|
|||||||
const StyledBoardCardBody = styled.div`
|
const StyledBoardCardBody = styled.div`
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
gap: ${({ theme }) => theme.spacing(2)};
|
|
||||||
padding: ${({ theme }) => theme.spacing(2)};
|
padding: ${({ theme }) => theme.spacing(2)};
|
||||||
span {
|
span {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -59,17 +64,37 @@ const StyledBoardCardBody = styled.div`
|
|||||||
|
|
||||||
type CompanyProp = Pick<
|
type CompanyProp = Pick<
|
||||||
Company,
|
Company,
|
||||||
'id' | 'name' | 'domainName' | 'employees' | 'createdAt' | 'accountOwner'
|
'id' | 'name' | 'domainName' | 'employees' | 'accountOwner'
|
||||||
>;
|
>;
|
||||||
|
|
||||||
|
type PipelineProgressProp = Pick<
|
||||||
|
PipelineProgress,
|
||||||
|
'id' | 'amount' | 'closeDate'
|
||||||
|
>;
|
||||||
|
|
||||||
|
// TODO: Remove when refactoring EditableCell into EditableField
|
||||||
|
function HackScope({ children }: { children: React.ReactNode }) {
|
||||||
|
return (
|
||||||
|
<RecoilScope>
|
||||||
|
<RecoilScope SpecificContext={RowContext}>
|
||||||
|
<RecoilScope SpecificContext={CellContext}>{children}</RecoilScope>
|
||||||
|
</RecoilScope>
|
||||||
|
</RecoilScope>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
export function CompanyBoardCard({
|
export function CompanyBoardCard({
|
||||||
company,
|
company,
|
||||||
|
pipelineProgress,
|
||||||
selected,
|
selected,
|
||||||
onSelect,
|
onSelect,
|
||||||
|
onCardUpdate,
|
||||||
}: {
|
}: {
|
||||||
company: CompanyProp;
|
company: CompanyProp;
|
||||||
|
pipelineProgress: PipelineProgressProp;
|
||||||
selected: boolean;
|
selected: boolean;
|
||||||
onSelect: (company: CompanyProp) => void;
|
onSelect: (company: CompanyProp) => void;
|
||||||
|
onCardUpdate: (pipelineProgress: PipelineProgressProp) => Promise<void>;
|
||||||
}) {
|
}) {
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
return (
|
return (
|
||||||
@ -86,15 +111,33 @@ export function CompanyBoardCard({
|
|||||||
</StyledBoardCardHeader>
|
</StyledBoardCardHeader>
|
||||||
<StyledBoardCardBody>
|
<StyledBoardCardBody>
|
||||||
<span>
|
<span>
|
||||||
<IconUser size={theme.icon.size.md} />
|
<IconCurrencyDollar size={theme.icon.size.md} />
|
||||||
<PersonChip name={company.accountOwner?.displayName || ''} />
|
<HackScope>
|
||||||
</span>
|
<EditableText
|
||||||
<span>
|
content={pipelineProgress.amount?.toString() || ''}
|
||||||
<IconUsers size={theme.icon.size.md} /> {company.employees}
|
placeholder="Opportunity amount"
|
||||||
|
changeHandler={(value) =>
|
||||||
|
onCardUpdate({
|
||||||
|
...pipelineProgress,
|
||||||
|
amount: parseInt(value),
|
||||||
|
})
|
||||||
|
}
|
||||||
|
/>
|
||||||
|
</HackScope>
|
||||||
</span>
|
</span>
|
||||||
<span>
|
<span>
|
||||||
<IconCalendarEvent size={theme.icon.size.md} />
|
<IconCalendarEvent size={theme.icon.size.md} />
|
||||||
{humanReadableDate(new Date(company.createdAt as string))}
|
<HackScope>
|
||||||
|
<EditableDate
|
||||||
|
value={new Date(pipelineProgress.closeDate || Date.now())}
|
||||||
|
changeHandler={(value) => {
|
||||||
|
onCardUpdate({
|
||||||
|
...pipelineProgress,
|
||||||
|
closeDate: value.toISOString(),
|
||||||
|
});
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
</HackScope>
|
||||||
</span>
|
</span>
|
||||||
</StyledBoardCardBody>
|
</StyledBoardCardBody>
|
||||||
</StyledBoardCard>
|
</StyledBoardCard>
|
||||||
|
|||||||
@ -39,10 +39,11 @@ export function NewButton({ pipelineId, columnId }: OwnProps) {
|
|||||||
setBoardItems({
|
setBoardItems({
|
||||||
...boardItems,
|
...boardItems,
|
||||||
[newUuid]: {
|
[newUuid]: {
|
||||||
id: company.id,
|
company,
|
||||||
name: company.name,
|
pipelineProgress: {
|
||||||
domainName: company.domainName,
|
id: newUuid,
|
||||||
createdAt: new Date().toISOString(),
|
amount: 0,
|
||||||
|
},
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
setBoard(newBoard);
|
setBoard(newBoard);
|
||||||
|
|||||||
@ -21,6 +21,7 @@ export const OneColumnBoard: Story = {
|
|||||||
columns={initialBoard}
|
columns={initialBoard}
|
||||||
initialBoard={initialBoard}
|
initialBoard={initialBoard}
|
||||||
initialItems={items}
|
initialItems={items}
|
||||||
|
onCardUpdate={async (_) => {}} // eslint-disable-line @typescript-eslint/no-empty-function
|
||||||
/>,
|
/>,
|
||||||
),
|
),
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,8 +1,11 @@
|
|||||||
import { StrictMode, useState } from 'react';
|
import { useState } from 'react';
|
||||||
import { Meta, StoryObj } from '@storybook/react';
|
import { Meta, StoryObj } from '@storybook/react';
|
||||||
|
|
||||||
|
import { getRenderWrapperForComponent } from '~/testing/renderWrappers';
|
||||||
|
|
||||||
import { Company } from '../../../../generated/graphql';
|
import { Company } from '../../../../generated/graphql';
|
||||||
import { mockedCompaniesData } from '../../../../testing/mock-data/companies';
|
import { mockedCompaniesData } from '../../../../testing/mock-data/companies';
|
||||||
|
import { mockedPipelineProgressData } from '../../../../testing/mock-data/pipeline-progress';
|
||||||
import { CompanyBoardCard } from '../CompanyBoardCard';
|
import { CompanyBoardCard } from '../CompanyBoardCard';
|
||||||
|
|
||||||
const meta: Meta<typeof CompanyBoardCard> = {
|
const meta: Meta<typeof CompanyBoardCard> = {
|
||||||
@ -19,16 +22,14 @@ const FakeSelectableCompanyBoardCard = () => {
|
|||||||
return (
|
return (
|
||||||
<CompanyBoardCard
|
<CompanyBoardCard
|
||||||
company={mockedCompaniesData[0] as Company}
|
company={mockedCompaniesData[0] as Company}
|
||||||
|
pipelineProgress={mockedPipelineProgressData[0]}
|
||||||
selected={selected}
|
selected={selected}
|
||||||
onSelect={() => setSelected(!selected)}
|
onSelect={() => setSelected(!selected)}
|
||||||
|
onCardUpdate={async (_) => {}} // eslint-disable-line @typescript-eslint/no-empty-function
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export const CompanyCompanyBoardCard: Story = {
|
export const CompanyCompanyBoardCard: Story = {
|
||||||
render: () => (
|
render: getRenderWrapperForComponent(<FakeSelectableCompanyBoardCard />),
|
||||||
<StrictMode>
|
|
||||||
<FakeSelectableCompanyBoardCard />
|
|
||||||
</StrictMode>
|
|
||||||
),
|
|
||||||
};
|
};
|
||||||
|
|||||||
@ -4,20 +4,24 @@ import { mockedCompaniesData } from '~/testing/mock-data/companies';
|
|||||||
import { CompanyProgressDict } from '../Board';
|
import { CompanyProgressDict } from '../Board';
|
||||||
|
|
||||||
export const items: CompanyProgressDict = {
|
export const items: CompanyProgressDict = {
|
||||||
'item-1': mockedCompaniesData[0],
|
'item-1': {
|
||||||
'item-2': mockedCompaniesData[1],
|
company: mockedCompaniesData[0],
|
||||||
'item-3': mockedCompaniesData[2],
|
pipelineProgress: { id: '0', amount: 1 },
|
||||||
'item-4': mockedCompaniesData[3],
|
},
|
||||||
|
'item-2': {
|
||||||
|
company: mockedCompaniesData[1],
|
||||||
|
pipelineProgress: { id: '1', amount: 1 },
|
||||||
|
},
|
||||||
|
'item-3': {
|
||||||
|
company: mockedCompaniesData[2],
|
||||||
|
pipelineProgress: { id: '2', amount: 1 },
|
||||||
|
},
|
||||||
|
'item-4': {
|
||||||
|
company: mockedCompaniesData[3],
|
||||||
|
pipelineProgress: { id: '3', amount: 1 },
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
for (let i = 7; i <= 20; i++) {
|
|
||||||
const key = `item-${i}`;
|
|
||||||
items[key] = {
|
|
||||||
...mockedCompaniesData[i % mockedCompaniesData.length],
|
|
||||||
id: key,
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
export const initialBoard = [
|
export const initialBoard = [
|
||||||
{
|
{
|
||||||
id: 'column-1',
|
id: 'column-1',
|
||||||
|
|||||||
@ -1,11 +1,21 @@
|
|||||||
import {
|
import {
|
||||||
Company,
|
Company,
|
||||||
|
PipelineProgress,
|
||||||
useGetCompaniesQuery,
|
useGetCompaniesQuery,
|
||||||
useGetPipelinesQuery,
|
useGetPipelinesQuery,
|
||||||
} from '../../../generated/graphql';
|
} from '../../../generated/graphql';
|
||||||
import { Column } from '../../ui/components/board/Board';
|
import { Column } from '../../ui/components/board/Board';
|
||||||
|
|
||||||
type Item = Pick<Company, 'id' | 'name' | 'createdAt' | 'domainName'>;
|
type ItemCompany = Pick<Company, 'id' | 'name' | 'domainName'>;
|
||||||
|
type ItemPipelineProgress = Pick<
|
||||||
|
PipelineProgress,
|
||||||
|
'id' | 'amount' | 'progressableId'
|
||||||
|
>;
|
||||||
|
|
||||||
|
type Item = {
|
||||||
|
company: ItemCompany;
|
||||||
|
pipelineProgress: ItemPipelineProgress;
|
||||||
|
};
|
||||||
type Items = { [key: string]: Item };
|
type Items = { [key: string]: Item };
|
||||||
|
|
||||||
export function useBoard(pipelineId: string) {
|
export function useBoard(pipelineId: string) {
|
||||||
@ -27,12 +37,9 @@ export function useBoard(pipelineId: string) {
|
|||||||
const pipelineProgresses = pipelineStages?.reduce(
|
const pipelineProgresses = pipelineStages?.reduce(
|
||||||
(acc, pipelineStage) => [
|
(acc, pipelineStage) => [
|
||||||
...acc,
|
...acc,
|
||||||
...(pipelineStage.pipelineProgresses?.map((item) => ({
|
...(pipelineStage.pipelineProgresses || []),
|
||||||
progressableId: item?.progressableId,
|
|
||||||
pipelineProgressId: item?.id,
|
|
||||||
})) || []),
|
|
||||||
],
|
],
|
||||||
[] as { progressableId: string; pipelineProgressId: string }[],
|
[] as ItemPipelineProgress[],
|
||||||
);
|
);
|
||||||
|
|
||||||
const entitiesQueryResult = useGetCompaniesQuery({
|
const entitiesQueryResult = useGetCompaniesQuery({
|
||||||
@ -43,20 +50,25 @@ export function useBoard(pipelineId: string) {
|
|||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
const indexByIdReducer = (acc: Items, entity: Item) => ({
|
const indexCompanyByIdReducer = (
|
||||||
|
acc: { [key: string]: ItemCompany },
|
||||||
|
entity: ItemCompany,
|
||||||
|
) => ({
|
||||||
...acc,
|
...acc,
|
||||||
[entity.id]: entity,
|
[entity.id]: entity,
|
||||||
});
|
});
|
||||||
|
|
||||||
const companiesDict = entitiesQueryResult.data?.companies.reduce(
|
const companiesDict = entitiesQueryResult.data?.companies.reduce(
|
||||||
indexByIdReducer,
|
indexCompanyByIdReducer,
|
||||||
{} as Items,
|
{} as { [key: string]: ItemCompany },
|
||||||
);
|
);
|
||||||
|
|
||||||
const items = pipelineProgresses?.reduce((acc, pipelineProgress) => {
|
const items = pipelineProgresses?.reduce((acc, pipelineProgress) => {
|
||||||
if (companiesDict?.[pipelineProgress.progressableId]) {
|
if (companiesDict?.[pipelineProgress.progressableId]) {
|
||||||
acc[pipelineProgress.pipelineProgressId] =
|
acc[pipelineProgress.id] = {
|
||||||
companiesDict[pipelineProgress.progressableId];
|
pipelineProgress,
|
||||||
|
company: companiesDict[pipelineProgress.progressableId],
|
||||||
|
};
|
||||||
}
|
}
|
||||||
return acc;
|
return acc;
|
||||||
}, {} as Items);
|
}, {} as Items);
|
||||||
|
|||||||
@ -14,14 +14,36 @@ export const GET_PIPELINES = gql`
|
|||||||
id
|
id
|
||||||
progressableType
|
progressableType
|
||||||
progressableId
|
progressableId
|
||||||
|
amount
|
||||||
|
closeDate
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
export const UPDATE_PIPELINE_STAGE = gql`
|
export const UPDATE_PIPELINE_PROGRESS = gql`
|
||||||
mutation UpdateOnePipelineProgress($id: String, $pipelineStageId: String) {
|
mutation UpdateOnePipelineProgress(
|
||||||
|
$id: String
|
||||||
|
$amount: Int
|
||||||
|
$closeDate: DateTime
|
||||||
|
) {
|
||||||
|
updateOnePipelineProgress(
|
||||||
|
where: { id: $id }
|
||||||
|
data: { amount: { set: $amount }, closeDate: { set: $closeDate } }
|
||||||
|
) {
|
||||||
|
id
|
||||||
|
amount
|
||||||
|
closeDate
|
||||||
|
}
|
||||||
|
}
|
||||||
|
`;
|
||||||
|
|
||||||
|
export const UPDATE_PIPELINE_PROGRESS_STAGE = gql`
|
||||||
|
mutation UpdateOnePipelineProgressStage(
|
||||||
|
$id: String
|
||||||
|
$pipelineStageId: String
|
||||||
|
) {
|
||||||
updateOnePipelineProgress(
|
updateOnePipelineProgress(
|
||||||
where: { id: $id }
|
where: { id: $id }
|
||||||
data: { pipelineStage: { connect: { id: $pipelineStageId } } }
|
data: { pipelineStage: { connect: { id: $pipelineStageId } } }
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import {
|
|||||||
PipelineStage,
|
PipelineStage,
|
||||||
useGetPipelinesQuery,
|
useGetPipelinesQuery,
|
||||||
useUpdateOnePipelineProgressMutation,
|
useUpdateOnePipelineProgressMutation,
|
||||||
|
useUpdateOnePipelineProgressStageMutation,
|
||||||
} from '../../generated/graphql';
|
} from '../../generated/graphql';
|
||||||
import { Board } from '../../modules/pipeline-progress/components/Board';
|
import { Board } from '../../modules/pipeline-progress/components/Board';
|
||||||
import { useBoard } from '../../modules/pipeline-progress/hooks/useBoard';
|
import { useBoard } from '../../modules/pipeline-progress/hooks/useBoard';
|
||||||
@ -32,17 +33,37 @@ export function Opportunities() {
|
|||||||
[initialBoard],
|
[initialBoard],
|
||||||
);
|
);
|
||||||
const [updatePipelineProgress] = useUpdateOnePipelineProgressMutation();
|
const [updatePipelineProgress] = useUpdateOnePipelineProgressMutation();
|
||||||
|
const [updatePipelineProgressStage] =
|
||||||
|
useUpdateOnePipelineProgressStageMutation();
|
||||||
|
|
||||||
const onUpdate = useCallback(
|
const handleCardUpdate = useCallback(
|
||||||
|
async (
|
||||||
|
pipelineProgress: Pick<PipelineProgress, 'id' | 'amount' | 'closeDate'>,
|
||||||
|
) => {
|
||||||
|
updatePipelineProgress({
|
||||||
|
variables: {
|
||||||
|
id: pipelineProgress.id,
|
||||||
|
amount: pipelineProgress.amount,
|
||||||
|
closeDate: pipelineProgress.closeDate || null,
|
||||||
|
},
|
||||||
|
});
|
||||||
|
},
|
||||||
|
[updatePipelineProgress],
|
||||||
|
);
|
||||||
|
|
||||||
|
const handleCardMove = useCallback(
|
||||||
async (
|
async (
|
||||||
pipelineProgressId: NonNullable<PipelineProgress['id']>,
|
pipelineProgressId: NonNullable<PipelineProgress['id']>,
|
||||||
pipelineStageId: NonNullable<PipelineStage['id']>,
|
pipelineStageId: NonNullable<PipelineStage['id']>,
|
||||||
) => {
|
) => {
|
||||||
updatePipelineProgress({
|
updatePipelineProgressStage({
|
||||||
variables: { id: pipelineProgressId, pipelineStageId },
|
variables: {
|
||||||
|
id: pipelineProgressId,
|
||||||
|
pipelineStageId,
|
||||||
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
[updatePipelineProgress],
|
[updatePipelineProgressStage],
|
||||||
);
|
);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
@ -57,7 +78,8 @@ export function Opportunities() {
|
|||||||
columns={columns || []}
|
columns={columns || []}
|
||||||
initialBoard={initialBoard}
|
initialBoard={initialBoard}
|
||||||
initialItems={items}
|
initialItems={items}
|
||||||
onUpdate={onUpdate}
|
onCardMove={handleCardMove}
|
||||||
|
onCardUpdate={handleCardUpdate}
|
||||||
/>
|
/>
|
||||||
<EntityBoardActionBar>
|
<EntityBoardActionBar>
|
||||||
<BoardActionBarButtonDeletePipelineProgress />
|
<BoardActionBarButtonDeletePipelineProgress />
|
||||||
|
|||||||
@ -1,11 +1,13 @@
|
|||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
import { useRecoilState } from 'recoil';
|
import { useRecoilState } from 'recoil';
|
||||||
|
|
||||||
|
import { useIsLogged } from '@/auth/hooks/useIsLogged';
|
||||||
import { currentUserState } from '@/auth/states/currentUserState';
|
import { currentUserState } from '@/auth/states/currentUserState';
|
||||||
import { useGetCurrentUserQuery } from '~/generated/graphql';
|
import { useGetCurrentUserQuery } from '~/generated/graphql';
|
||||||
|
|
||||||
export function UserProvider({ children }: React.PropsWithChildren) {
|
export function UserProvider({ children }: React.PropsWithChildren) {
|
||||||
const [, setCurrentUser] = useRecoilState(currentUserState);
|
const [currentUser, setCurrentUser] = useRecoilState(currentUserState);
|
||||||
|
const isLoggedIn = useIsLogged();
|
||||||
const { data, loading } = useGetCurrentUserQuery();
|
const { data, loading } = useGetCurrentUserQuery();
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@ -14,5 +16,5 @@ export function UserProvider({ children }: React.PropsWithChildren) {
|
|||||||
}
|
}
|
||||||
}, [setCurrentUser, data]);
|
}, [setCurrentUser, data]);
|
||||||
|
|
||||||
return loading ? <></> : <>{children}</>;
|
return loading || (isLoggedIn && !currentUser) ? <></> : <>{children}</>;
|
||||||
}
|
}
|
||||||
|
|||||||
26
front/src/testing/mock-data/pipeline-progress.ts
Normal file
26
front/src/testing/mock-data/pipeline-progress.ts
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
import { PipelineProgress, User } from '../../generated/graphql';
|
||||||
|
|
||||||
|
type MockedPipelineProgress = Pick<
|
||||||
|
PipelineProgress,
|
||||||
|
'id' | 'amount' | 'closeDate'
|
||||||
|
> & {
|
||||||
|
accountOwner: Pick<
|
||||||
|
User,
|
||||||
|
'id' | 'email' | 'displayName' | '__typename' | 'firstName' | 'lastName'
|
||||||
|
> | null;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const mockedPipelineProgressData: Array<MockedPipelineProgress> = [
|
||||||
|
{
|
||||||
|
id: '0ac8761c-1ad6-11ee-be56-0242ac120002',
|
||||||
|
amount: 78,
|
||||||
|
accountOwner: {
|
||||||
|
email: 'charles@test.com',
|
||||||
|
displayName: 'Charles Test',
|
||||||
|
firstName: 'Charles',
|
||||||
|
lastName: 'Test',
|
||||||
|
id: '7dfbc3f7-6e5e-4128-957e-8d86808cdf6b',
|
||||||
|
__typename: 'User',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
];
|
||||||
@ -30,16 +30,13 @@ front-graphql-generate:
|
|||||||
@docker-compose exec twenty-dev sh -c "cd /app/front && yarn graphql:generate"
|
@docker-compose exec twenty-dev sh -c "cd /app/front && yarn graphql:generate"
|
||||||
|
|
||||||
front-storybook:
|
front-storybook:
|
||||||
@docker-compose exec twenty-dev sh -c "cd /app/front && yarn storybook"
|
@docker-compose exec twenty-dev sh -c "cd /app/front && yarn storybook:dev"
|
||||||
|
|
||||||
server-start:
|
server-start:
|
||||||
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn start:dev"
|
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn start:dev"
|
||||||
|
|
||||||
server-prisma-generate-client:
|
server-prisma-generate:
|
||||||
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn prisma:generate-client"
|
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn prisma:generate"
|
||||||
|
|
||||||
server-prisma-generate-nest-graphql:
|
|
||||||
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn prisma:generate-nest-graphql"
|
|
||||||
|
|
||||||
server-prisma-migrate:
|
server-prisma-migrate:
|
||||||
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn prisma:migrate"
|
@docker-compose exec twenty-dev sh -c "cd /app/server && yarn prisma:migrate"
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { ObjectType } from '@nestjs/graphql';
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
import { PipelineProgressCountAggregate } from './pipeline-progress-count-aggregate.output';
|
import { PipelineProgressCountAggregate } from './pipeline-progress-count-aggregate.output';
|
||||||
|
import { PipelineProgressAvgAggregate } from './pipeline-progress-avg-aggregate.output';
|
||||||
|
import { PipelineProgressSumAggregate } from './pipeline-progress-sum-aggregate.output';
|
||||||
import { PipelineProgressMinAggregate } from './pipeline-progress-min-aggregate.output';
|
import { PipelineProgressMinAggregate } from './pipeline-progress-min-aggregate.output';
|
||||||
import { PipelineProgressMaxAggregate } from './pipeline-progress-max-aggregate.output';
|
import { PipelineProgressMaxAggregate } from './pipeline-progress-max-aggregate.output';
|
||||||
|
|
||||||
@ -10,6 +12,12 @@ export class AggregatePipelineProgress {
|
|||||||
@Field(() => PipelineProgressCountAggregate, {nullable:true})
|
@Field(() => PipelineProgressCountAggregate, {nullable:true})
|
||||||
_count?: PipelineProgressCountAggregate;
|
_count?: PipelineProgressCountAggregate;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressAvgAggregate, {nullable:true})
|
||||||
|
_avg?: PipelineProgressAvgAggregate;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressSumAggregate, {nullable:true})
|
||||||
|
_sum?: PipelineProgressSumAggregate;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMinAggregate, {nullable:true})
|
@Field(() => PipelineProgressMinAggregate, {nullable:true})
|
||||||
_min?: PipelineProgressMinAggregate;
|
_min?: PipelineProgressMinAggregate;
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,9 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { InputType } from '@nestjs/graphql';
|
||||||
|
|
||||||
|
@InputType()
|
||||||
|
export class PipelineProgressAvgAggregateInput {
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
amount?: true;
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
|
import { Float } from '@nestjs/graphql';
|
||||||
|
|
||||||
|
@ObjectType()
|
||||||
|
export class PipelineProgressAvgAggregate {
|
||||||
|
|
||||||
|
@Field(() => Float, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { InputType } from '@nestjs/graphql';
|
||||||
|
import { SortOrder } from '../prisma/sort-order.enum';
|
||||||
|
|
||||||
|
@InputType()
|
||||||
|
export class PipelineProgressAvgOrderByAggregateInput {
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
}
|
||||||
@ -8,6 +8,12 @@ export class PipelineProgressCountAggregateInput {
|
|||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
id?: true;
|
id?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
amount?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
closeDate?: true;
|
||||||
|
|
||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
pipelineId?: true;
|
pipelineId?: true;
|
||||||
|
|
||||||
|
|||||||
@ -9,6 +9,12 @@ export class PipelineProgressCountAggregate {
|
|||||||
@Field(() => Int, {nullable:false})
|
@Field(() => Int, {nullable:false})
|
||||||
id!: number;
|
id!: number;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:false})
|
||||||
|
amount!: number;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:false})
|
||||||
|
closeDate!: number;
|
||||||
|
|
||||||
@Field(() => Int, {nullable:false})
|
@Field(() => Int, {nullable:false})
|
||||||
pipelineId!: number;
|
pipelineId!: number;
|
||||||
|
|
||||||
|
|||||||
@ -9,6 +9,12 @@ export class PipelineProgressCountOrderByAggregateInput {
|
|||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
id?: keyof typeof SortOrder;
|
id?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
closeDate?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
pipelineId?: keyof typeof SortOrder;
|
pipelineId?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressCreateManyPipelineStageInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressCreateManyPipelineInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineStageId!: string;
|
pipelineStageId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressCreateManyWorkspaceInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressCreateManyInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressCreateWithoutPipelineStageInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => PipelineProgressableType, {nullable:false})
|
@Field(() => PipelineProgressableType, {nullable:false})
|
||||||
progressableType!: keyof typeof PipelineProgressableType;
|
progressableType!: keyof typeof PipelineProgressableType;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineStageCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline-stage/pipeline-stage-create-nested-one-without-pipeline-progresses.input';
|
import { PipelineStageCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline-stage/pipeline-stage-create-nested-one-without-pipeline-progresses.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressCreateWithoutPipelineInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => PipelineProgressableType, {nullable:false})
|
@Field(() => PipelineProgressableType, {nullable:false})
|
||||||
progressableType!: keyof typeof PipelineProgressableType;
|
progressableType!: keyof typeof PipelineProgressableType;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressCreateWithoutWorkspaceInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => PipelineProgressableType, {nullable:false})
|
@Field(() => PipelineProgressableType, {nullable:false})
|
||||||
progressableType!: keyof typeof PipelineProgressableType;
|
progressableType!: keyof typeof PipelineProgressableType;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
import { PipelineCreateNestedOneWithoutPipelineProgressesInput } from '../pipeline/pipeline-create-nested-one-without-pipeline-progresses.input';
|
||||||
@ -15,6 +16,12 @@ export class PipelineProgressCreateInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => PipelineProgressableType, {nullable:false})
|
@Field(() => PipelineProgressableType, {nullable:false})
|
||||||
progressableType!: keyof typeof PipelineProgressableType;
|
progressableType!: keyof typeof PipelineProgressableType;
|
||||||
|
|
||||||
|
|||||||
@ -7,6 +7,8 @@ import { PipelineProgressScalarFieldEnum } from './pipeline-progress-scalar-fiel
|
|||||||
import { PipelineProgressScalarWhereWithAggregatesInput } from './pipeline-progress-scalar-where-with-aggregates.input';
|
import { PipelineProgressScalarWhereWithAggregatesInput } from './pipeline-progress-scalar-where-with-aggregates.input';
|
||||||
import { Int } from '@nestjs/graphql';
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressCountAggregateInput } from './pipeline-progress-count-aggregate.input';
|
import { PipelineProgressCountAggregateInput } from './pipeline-progress-count-aggregate.input';
|
||||||
|
import { PipelineProgressAvgAggregateInput } from './pipeline-progress-avg-aggregate.input';
|
||||||
|
import { PipelineProgressSumAggregateInput } from './pipeline-progress-sum-aggregate.input';
|
||||||
import { PipelineProgressMinAggregateInput } from './pipeline-progress-min-aggregate.input';
|
import { PipelineProgressMinAggregateInput } from './pipeline-progress-min-aggregate.input';
|
||||||
import { PipelineProgressMaxAggregateInput } from './pipeline-progress-max-aggregate.input';
|
import { PipelineProgressMaxAggregateInput } from './pipeline-progress-max-aggregate.input';
|
||||||
|
|
||||||
@ -35,6 +37,12 @@ export class PipelineProgressGroupByArgs {
|
|||||||
@Field(() => PipelineProgressCountAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressCountAggregateInput, {nullable:true})
|
||||||
_count?: PipelineProgressCountAggregateInput;
|
_count?: PipelineProgressCountAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressAvgAggregateInput, {nullable:true})
|
||||||
|
_avg?: PipelineProgressAvgAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressSumAggregateInput, {nullable:true})
|
||||||
|
_sum?: PipelineProgressSumAggregateInput;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMinAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressMinAggregateInput, {nullable:true})
|
||||||
_min?: PipelineProgressMinAggregateInput;
|
_min?: PipelineProgressMinAggregateInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,12 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { ObjectType } from '@nestjs/graphql';
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineProgressCountAggregate } from './pipeline-progress-count-aggregate.output';
|
import { PipelineProgressCountAggregate } from './pipeline-progress-count-aggregate.output';
|
||||||
|
import { PipelineProgressAvgAggregate } from './pipeline-progress-avg-aggregate.output';
|
||||||
|
import { PipelineProgressSumAggregate } from './pipeline-progress-sum-aggregate.output';
|
||||||
import { PipelineProgressMinAggregate } from './pipeline-progress-min-aggregate.output';
|
import { PipelineProgressMinAggregate } from './pipeline-progress-min-aggregate.output';
|
||||||
import { PipelineProgressMaxAggregate } from './pipeline-progress-max-aggregate.output';
|
import { PipelineProgressMaxAggregate } from './pipeline-progress-max-aggregate.output';
|
||||||
|
|
||||||
@ -15,6 +18,12 @@ export class PipelineProgressGroupBy {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id!: string;
|
id!: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
@ -42,6 +51,12 @@ export class PipelineProgressGroupBy {
|
|||||||
@Field(() => PipelineProgressCountAggregate, {nullable:true})
|
@Field(() => PipelineProgressCountAggregate, {nullable:true})
|
||||||
_count?: PipelineProgressCountAggregate;
|
_count?: PipelineProgressCountAggregate;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressAvgAggregate, {nullable:true})
|
||||||
|
_avg?: PipelineProgressAvgAggregate;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressSumAggregate, {nullable:true})
|
||||||
|
_sum?: PipelineProgressSumAggregate;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMinAggregate, {nullable:true})
|
@Field(() => PipelineProgressMinAggregate, {nullable:true})
|
||||||
_min?: PipelineProgressMinAggregate;
|
_min?: PipelineProgressMinAggregate;
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,12 @@ export class PipelineProgressMaxAggregateInput {
|
|||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
id?: true;
|
id?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
amount?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
closeDate?: true;
|
||||||
|
|
||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
pipelineId?: true;
|
pipelineId?: true;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { ObjectType } from '@nestjs/graphql';
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressMaxAggregate {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:true})
|
@Field(() => String, {nullable:true})
|
||||||
pipelineId?: string;
|
pipelineId?: string;
|
||||||
|
|
||||||
|
|||||||
@ -9,6 +9,12 @@ export class PipelineProgressMaxOrderByAggregateInput {
|
|||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
id?: keyof typeof SortOrder;
|
id?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
closeDate?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
pipelineId?: keyof typeof SortOrder;
|
pipelineId?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
|||||||
@ -8,6 +8,12 @@ export class PipelineProgressMinAggregateInput {
|
|||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
id?: true;
|
id?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
amount?: true;
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
closeDate?: true;
|
||||||
|
|
||||||
@Field(() => Boolean, {nullable:true})
|
@Field(() => Boolean, {nullable:true})
|
||||||
pipelineId?: true;
|
pipelineId?: true;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { ObjectType } from '@nestjs/graphql';
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressMinAggregate {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:true})
|
@Field(() => String, {nullable:true})
|
||||||
pipelineId?: string;
|
pipelineId?: string;
|
||||||
|
|
||||||
|
|||||||
@ -9,6 +9,12 @@ export class PipelineProgressMinOrderByAggregateInput {
|
|||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
id?: keyof typeof SortOrder;
|
id?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
closeDate?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
pipelineId?: keyof typeof SortOrder;
|
pipelineId?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
|||||||
@ -3,8 +3,10 @@ import { InputType } from '@nestjs/graphql';
|
|||||||
import { SortOrder } from '../prisma/sort-order.enum';
|
import { SortOrder } from '../prisma/sort-order.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { PipelineProgressCountOrderByAggregateInput } from './pipeline-progress-count-order-by-aggregate.input';
|
import { PipelineProgressCountOrderByAggregateInput } from './pipeline-progress-count-order-by-aggregate.input';
|
||||||
|
import { PipelineProgressAvgOrderByAggregateInput } from './pipeline-progress-avg-order-by-aggregate.input';
|
||||||
import { PipelineProgressMaxOrderByAggregateInput } from './pipeline-progress-max-order-by-aggregate.input';
|
import { PipelineProgressMaxOrderByAggregateInput } from './pipeline-progress-max-order-by-aggregate.input';
|
||||||
import { PipelineProgressMinOrderByAggregateInput } from './pipeline-progress-min-order-by-aggregate.input';
|
import { PipelineProgressMinOrderByAggregateInput } from './pipeline-progress-min-order-by-aggregate.input';
|
||||||
|
import { PipelineProgressSumOrderByAggregateInput } from './pipeline-progress-sum-order-by-aggregate.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
export class PipelineProgressOrderByWithAggregationInput {
|
export class PipelineProgressOrderByWithAggregationInput {
|
||||||
@ -12,6 +14,12 @@ export class PipelineProgressOrderByWithAggregationInput {
|
|||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
id?: keyof typeof SortOrder;
|
id?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
closeDate?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
pipelineId?: keyof typeof SortOrder;
|
pipelineId?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@ -39,9 +47,15 @@ export class PipelineProgressOrderByWithAggregationInput {
|
|||||||
@Field(() => PipelineProgressCountOrderByAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressCountOrderByAggregateInput, {nullable:true})
|
||||||
_count?: PipelineProgressCountOrderByAggregateInput;
|
_count?: PipelineProgressCountOrderByAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressAvgOrderByAggregateInput, {nullable:true})
|
||||||
|
_avg?: PipelineProgressAvgOrderByAggregateInput;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMaxOrderByAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressMaxOrderByAggregateInput, {nullable:true})
|
||||||
_max?: PipelineProgressMaxOrderByAggregateInput;
|
_max?: PipelineProgressMaxOrderByAggregateInput;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMinOrderByAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressMinOrderByAggregateInput, {nullable:true})
|
||||||
_min?: PipelineProgressMinOrderByAggregateInput;
|
_min?: PipelineProgressMinOrderByAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressSumOrderByAggregateInput, {nullable:true})
|
||||||
|
_sum?: PipelineProgressSumOrderByAggregateInput;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,6 +12,12 @@ export class PipelineProgressOrderByWithRelationInput {
|
|||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
id?: keyof typeof SortOrder;
|
id?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
closeDate?: keyof typeof SortOrder;
|
||||||
|
|
||||||
@Field(() => SortOrder, {nullable:true})
|
@Field(() => SortOrder, {nullable:true})
|
||||||
pipelineId?: keyof typeof SortOrder;
|
pipelineId?: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
|||||||
@ -2,6 +2,8 @@ import { registerEnumType } from '@nestjs/graphql';
|
|||||||
|
|
||||||
export enum PipelineProgressScalarFieldEnum {
|
export enum PipelineProgressScalarFieldEnum {
|
||||||
id = "id",
|
id = "id",
|
||||||
|
amount = "amount",
|
||||||
|
closeDate = "closeDate",
|
||||||
pipelineId = "pipelineId",
|
pipelineId = "pipelineId",
|
||||||
pipelineStageId = "pipelineStageId",
|
pipelineStageId = "pipelineStageId",
|
||||||
progressableType = "progressableType",
|
progressableType = "progressableType",
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringWithAggregatesFilter } from '../prisma/string-with-aggregates-filter.input';
|
import { StringWithAggregatesFilter } from '../prisma/string-with-aggregates-filter.input';
|
||||||
|
import { IntNullableWithAggregatesFilter } from '../prisma/int-nullable-with-aggregates-filter.input';
|
||||||
|
import { DateTimeNullableWithAggregatesFilter } from '../prisma/date-time-nullable-with-aggregates-filter.input';
|
||||||
import { EnumPipelineProgressableTypeWithAggregatesFilter } from '../prisma/enum-pipeline-progressable-type-with-aggregates-filter.input';
|
import { EnumPipelineProgressableTypeWithAggregatesFilter } from '../prisma/enum-pipeline-progressable-type-with-aggregates-filter.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeNullableWithAggregatesFilter } from '../prisma/date-time-nullable-with-aggregates-filter.input';
|
|
||||||
import { DateTimeWithAggregatesFilter } from '../prisma/date-time-with-aggregates-filter.input';
|
import { DateTimeWithAggregatesFilter } from '../prisma/date-time-with-aggregates-filter.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -21,6 +22,12 @@ export class PipelineProgressScalarWhereWithAggregatesInput {
|
|||||||
@Field(() => StringWithAggregatesFilter, {nullable:true})
|
@Field(() => StringWithAggregatesFilter, {nullable:true})
|
||||||
id?: StringWithAggregatesFilter;
|
id?: StringWithAggregatesFilter;
|
||||||
|
|
||||||
|
@Field(() => IntNullableWithAggregatesFilter, {nullable:true})
|
||||||
|
amount?: IntNullableWithAggregatesFilter;
|
||||||
|
|
||||||
|
@Field(() => DateTimeNullableWithAggregatesFilter, {nullable:true})
|
||||||
|
closeDate?: DateTimeNullableWithAggregatesFilter;
|
||||||
|
|
||||||
@Field(() => StringWithAggregatesFilter, {nullable:true})
|
@Field(() => StringWithAggregatesFilter, {nullable:true})
|
||||||
pipelineId?: StringWithAggregatesFilter;
|
pipelineId?: StringWithAggregatesFilter;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFilter } from '../prisma/string-filter.input';
|
import { StringFilter } from '../prisma/string-filter.input';
|
||||||
|
import { IntNullableFilter } from '../prisma/int-nullable-filter.input';
|
||||||
|
import { DateTimeNullableFilter } from '../prisma/date-time-nullable-filter.input';
|
||||||
import { EnumPipelineProgressableTypeFilter } from '../prisma/enum-pipeline-progressable-type-filter.input';
|
import { EnumPipelineProgressableTypeFilter } from '../prisma/enum-pipeline-progressable-type-filter.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeNullableFilter } from '../prisma/date-time-nullable-filter.input';
|
|
||||||
import { DateTimeFilter } from '../prisma/date-time-filter.input';
|
import { DateTimeFilter } from '../prisma/date-time-filter.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -21,6 +22,12 @@ export class PipelineProgressScalarWhereInput {
|
|||||||
@Field(() => StringFilter, {nullable:true})
|
@Field(() => StringFilter, {nullable:true})
|
||||||
id?: StringFilter;
|
id?: StringFilter;
|
||||||
|
|
||||||
|
@Field(() => IntNullableFilter, {nullable:true})
|
||||||
|
amount?: IntNullableFilter;
|
||||||
|
|
||||||
|
@Field(() => DateTimeNullableFilter, {nullable:true})
|
||||||
|
closeDate?: DateTimeNullableFilter;
|
||||||
|
|
||||||
@Field(() => StringFilter, {nullable:true})
|
@Field(() => StringFilter, {nullable:true})
|
||||||
pipelineId?: StringFilter;
|
pipelineId?: StringFilter;
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,9 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { InputType } from '@nestjs/graphql';
|
||||||
|
|
||||||
|
@InputType()
|
||||||
|
export class PipelineProgressSumAggregateInput {
|
||||||
|
|
||||||
|
@Field(() => Boolean, {nullable:true})
|
||||||
|
amount?: true;
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
|
|
||||||
|
@ObjectType()
|
||||||
|
export class PipelineProgressSumAggregate {
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
}
|
||||||
@ -0,0 +1,10 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { InputType } from '@nestjs/graphql';
|
||||||
|
import { SortOrder } from '../prisma/sort-order.enum';
|
||||||
|
|
||||||
|
@InputType()
|
||||||
|
export class PipelineProgressSumOrderByAggregateInput {
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:true})
|
||||||
|
amount?: keyof typeof SortOrder;
|
||||||
|
}
|
||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedCreateWithoutPipelineStageInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedCreateWithoutPipelineInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineStageId!: string;
|
pipelineStageId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedCreateWithoutWorkspaceInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import * as Validator from 'class-validator';
|
import * as Validator from 'class-validator';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedCreateInput {
|
|||||||
@Validator.IsOptional()
|
@Validator.IsOptional()
|
||||||
id?: string;
|
id?: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount?: number;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate?: Date | string;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateManyWithoutPipelineProgressesInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineId?: StringFieldUpdateOperationsInput;
|
pipelineId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateManyInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineId?: StringFieldUpdateOperationsInput;
|
pipelineId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateWithoutPipelineStageInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineId?: StringFieldUpdateOperationsInput;
|
pipelineId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateWithoutPipelineInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineStageId?: StringFieldUpdateOperationsInput;
|
pipelineStageId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateWithoutWorkspaceInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineId?: StringFieldUpdateOperationsInput;
|
pipelineId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@InputType()
|
@InputType()
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUncheckedUpdateInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
pipelineId?: StringFieldUpdateOperationsInput;
|
pipelineId?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
|
|
||||||
@ -12,6 +13,12 @@ export class PipelineProgressUpdateManyMutationInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
||||||
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressUpdateWithoutPipelineStageInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
||||||
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
import { PipelineStageUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline-stage/pipeline-stage-update-one-required-without-pipeline-progresses-nested.input';
|
import { PipelineStageUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline-stage/pipeline-stage-update-one-required-without-pipeline-progresses-nested.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressUpdateWithoutPipelineInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
||||||
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
||||||
@ -14,6 +15,12 @@ export class PipelineProgressUpdateWithoutWorkspaceInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
||||||
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,9 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
import { StringFieldUpdateOperationsInput } from '../prisma/string-field-update-operations.input';
|
||||||
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
import { NullableIntFieldUpdateOperationsInput } from '../prisma/nullable-int-field-update-operations.input';
|
||||||
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
import { NullableDateTimeFieldUpdateOperationsInput } from '../prisma/nullable-date-time-field-update-operations.input';
|
||||||
|
import { EnumPipelineProgressableTypeFieldUpdateOperationsInput } from '../prisma/enum-pipeline-progressable-type-field-update-operations.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
import { DateTimeFieldUpdateOperationsInput } from '../prisma/date-time-field-update-operations.input';
|
||||||
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
import { PipelineUpdateOneRequiredWithoutPipelineProgressesNestedInput } from '../pipeline/pipeline-update-one-required-without-pipeline-progresses-nested.input';
|
||||||
@ -15,6 +16,12 @@ export class PipelineProgressUpdateInput {
|
|||||||
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => StringFieldUpdateOperationsInput, {nullable:true})
|
||||||
id?: StringFieldUpdateOperationsInput;
|
id?: StringFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableIntFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
amount?: NullableIntFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
@Field(() => NullableDateTimeFieldUpdateOperationsInput, {nullable:true})
|
||||||
|
closeDate?: NullableDateTimeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
@Field(() => EnumPipelineProgressableTypeFieldUpdateOperationsInput, {nullable:true})
|
||||||
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
progressableType?: EnumPipelineProgressableTypeFieldUpdateOperationsInput;
|
||||||
|
|
||||||
|
|||||||
@ -1,9 +1,10 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { InputType } from '@nestjs/graphql';
|
import { InputType } from '@nestjs/graphql';
|
||||||
import { StringFilter } from '../prisma/string-filter.input';
|
import { StringFilter } from '../prisma/string-filter.input';
|
||||||
|
import { IntNullableFilter } from '../prisma/int-nullable-filter.input';
|
||||||
|
import { DateTimeNullableFilter } from '../prisma/date-time-nullable-filter.input';
|
||||||
import { EnumPipelineProgressableTypeFilter } from '../prisma/enum-pipeline-progressable-type-filter.input';
|
import { EnumPipelineProgressableTypeFilter } from '../prisma/enum-pipeline-progressable-type-filter.input';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { DateTimeNullableFilter } from '../prisma/date-time-nullable-filter.input';
|
|
||||||
import { DateTimeFilter } from '../prisma/date-time-filter.input';
|
import { DateTimeFilter } from '../prisma/date-time-filter.input';
|
||||||
import { PipelineRelationFilter } from '../pipeline/pipeline-relation-filter.input';
|
import { PipelineRelationFilter } from '../pipeline/pipeline-relation-filter.input';
|
||||||
import { PipelineStageRelationFilter } from '../pipeline-stage/pipeline-stage-relation-filter.input';
|
import { PipelineStageRelationFilter } from '../pipeline-stage/pipeline-stage-relation-filter.input';
|
||||||
@ -24,6 +25,12 @@ export class PipelineProgressWhereInput {
|
|||||||
@Field(() => StringFilter, {nullable:true})
|
@Field(() => StringFilter, {nullable:true})
|
||||||
id?: StringFilter;
|
id?: StringFilter;
|
||||||
|
|
||||||
|
@Field(() => IntNullableFilter, {nullable:true})
|
||||||
|
amount?: IntNullableFilter;
|
||||||
|
|
||||||
|
@Field(() => DateTimeNullableFilter, {nullable:true})
|
||||||
|
closeDate?: DateTimeNullableFilter;
|
||||||
|
|
||||||
@Field(() => StringFilter, {nullable:true})
|
@Field(() => StringFilter, {nullable:true})
|
||||||
pipelineId?: StringFilter;
|
pipelineId?: StringFilter;
|
||||||
|
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
import { Field } from '@nestjs/graphql';
|
import { Field } from '@nestjs/graphql';
|
||||||
import { ObjectType } from '@nestjs/graphql';
|
import { ObjectType } from '@nestjs/graphql';
|
||||||
import { ID } from '@nestjs/graphql';
|
import { ID } from '@nestjs/graphql';
|
||||||
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
import { PipelineProgressableType } from '../prisma/pipeline-progressable-type.enum';
|
||||||
import { HideField } from '@nestjs/graphql';
|
import { HideField } from '@nestjs/graphql';
|
||||||
import { Pipeline } from '../pipeline/pipeline.model';
|
import { Pipeline } from '../pipeline/pipeline.model';
|
||||||
@ -13,6 +14,12 @@ export class PipelineProgress {
|
|||||||
@Field(() => ID, {nullable:false})
|
@Field(() => ID, {nullable:false})
|
||||||
id!: string;
|
id!: string;
|
||||||
|
|
||||||
|
@Field(() => Int, {nullable:true})
|
||||||
|
amount!: number | null;
|
||||||
|
|
||||||
|
@Field(() => Date, {nullable:true})
|
||||||
|
closeDate!: Date | null;
|
||||||
|
|
||||||
@Field(() => String, {nullable:false})
|
@Field(() => String, {nullable:false})
|
||||||
pipelineId!: string;
|
pipelineId!: string;
|
||||||
|
|
||||||
|
|||||||
@ -6,6 +6,8 @@ import { PipelineProgressOrderByWithRelationInput } from '../pipeline-progress/p
|
|||||||
import { PipelineProgressWhereUniqueInput } from '../pipeline-progress/pipeline-progress-where-unique.input';
|
import { PipelineProgressWhereUniqueInput } from '../pipeline-progress/pipeline-progress-where-unique.input';
|
||||||
import { Int } from '@nestjs/graphql';
|
import { Int } from '@nestjs/graphql';
|
||||||
import { PipelineProgressCountAggregateInput } from '../pipeline-progress/pipeline-progress-count-aggregate.input';
|
import { PipelineProgressCountAggregateInput } from '../pipeline-progress/pipeline-progress-count-aggregate.input';
|
||||||
|
import { PipelineProgressAvgAggregateInput } from '../pipeline-progress/pipeline-progress-avg-aggregate.input';
|
||||||
|
import { PipelineProgressSumAggregateInput } from '../pipeline-progress/pipeline-progress-sum-aggregate.input';
|
||||||
import { PipelineProgressMinAggregateInput } from '../pipeline-progress/pipeline-progress-min-aggregate.input';
|
import { PipelineProgressMinAggregateInput } from '../pipeline-progress/pipeline-progress-min-aggregate.input';
|
||||||
import { PipelineProgressMaxAggregateInput } from '../pipeline-progress/pipeline-progress-max-aggregate.input';
|
import { PipelineProgressMaxAggregateInput } from '../pipeline-progress/pipeline-progress-max-aggregate.input';
|
||||||
|
|
||||||
@ -31,6 +33,12 @@ export class PipelineProgressAggregateArgs {
|
|||||||
@Field(() => PipelineProgressCountAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressCountAggregateInput, {nullable:true})
|
||||||
_count?: PipelineProgressCountAggregateInput;
|
_count?: PipelineProgressCountAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressAvgAggregateInput, {nullable:true})
|
||||||
|
_avg?: PipelineProgressAvgAggregateInput;
|
||||||
|
|
||||||
|
@Field(() => PipelineProgressSumAggregateInput, {nullable:true})
|
||||||
|
_sum?: PipelineProgressSumAggregateInput;
|
||||||
|
|
||||||
@Field(() => PipelineProgressMinAggregateInput, {nullable:true})
|
@Field(() => PipelineProgressMinAggregateInput, {nullable:true})
|
||||||
_min?: PipelineProgressMinAggregateInput;
|
_min?: PipelineProgressMinAggregateInput;
|
||||||
|
|
||||||
|
|||||||
9
server/src/core/@generated/prisma/nulls-order.enum.ts
Normal file
9
server/src/core/@generated/prisma/nulls-order.enum.ts
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
import { registerEnumType } from '@nestjs/graphql';
|
||||||
|
|
||||||
|
export enum NullsOrder {
|
||||||
|
first = "first",
|
||||||
|
last = "last"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
registerEnumType(NullsOrder, { name: 'NullsOrder', description: undefined })
|
||||||
14
server/src/core/@generated/prisma/sort-order.input.ts
Normal file
14
server/src/core/@generated/prisma/sort-order.input.ts
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
import { Field } from '@nestjs/graphql';
|
||||||
|
import { InputType } from '@nestjs/graphql';
|
||||||
|
import { SortOrder } from './sort-order.enum';
|
||||||
|
import { NullsOrder } from './nulls-order.enum';
|
||||||
|
|
||||||
|
@InputType()
|
||||||
|
export class SortOrderInput {
|
||||||
|
|
||||||
|
@Field(() => SortOrder, {nullable:false})
|
||||||
|
sort!: keyof typeof SortOrder;
|
||||||
|
|
||||||
|
@Field(() => NullsOrder, {nullable:true})
|
||||||
|
nulls?: keyof typeof NullsOrder;
|
||||||
|
}
|
||||||
@ -0,0 +1,3 @@
|
|||||||
|
-- AlterTable
|
||||||
|
ALTER TABLE "pipeline_progresses" ADD COLUMN "amount" INTEGER,
|
||||||
|
ADD COLUMN "closeDate" TIMESTAMP(3);
|
||||||
@ -453,7 +453,9 @@ enum PipelineProgressableType {
|
|||||||
model PipelineProgress {
|
model PipelineProgress {
|
||||||
/// @Validator.IsString()
|
/// @Validator.IsString()
|
||||||
/// @Validator.IsOptional()
|
/// @Validator.IsOptional()
|
||||||
id String @id @default(uuid())
|
id String @id @default(uuid())
|
||||||
|
amount Int?
|
||||||
|
closeDate DateTime?
|
||||||
|
|
||||||
pipeline Pipeline @relation(fields: [pipelineId], references: [id])
|
pipeline Pipeline @relation(fields: [pipelineId], references: [id])
|
||||||
pipelineId String
|
pipelineId String
|
||||||
|
|||||||
Reference in New Issue
Block a user