55import dayjs from '@/utils/datetime/dayjs' ;
66import parseDateQueryParam from '@/utils/datetime/parse-date-query-param' ;
77import { type SortOrder } from '@/utils/sort-by' ;
8+ import DOMAIN_WORKFLOWS_ARCHIVAL_START_DAYS_CONFIG from '@/views/domain-workflows-archival/config/domain-workflows-archival-start-days.config' ;
89import { type WorkflowStatusClosed } from '@/views/domain-workflows-archival/domain-workflows-archival-header/domain-workflows-archival-header.types' ;
910import DOMAIN_WORKFLOWS_BASIC_START_DAYS_CONFIG from '@/views/domain-workflows-basic/config/domain-workflows-basic-start-days.config' ;
1011import { type WorkflowStatusBasicVisibility } from '@/views/domain-workflows-basic/domain-workflows-basic-filters/domain-workflows-basic-filters.types' ;
@@ -13,13 +14,15 @@ import isWorkflowStatus from '@/views/shared/workflow-status-tag/helpers/is-work
1314import { type WorkflowStatus } from '@/views/shared/workflow-status-tag/workflow-status-tag.types' ;
1415import { type WorkflowsHeaderInputType } from '@/views/shared/workflows-header/workflows-header.types' ;
1516
17+ const now = dayjs ( ) ;
18+
1619const domainPageQueryParamsConfig : [
1720 PageQueryParam < 'inputType' , WorkflowsHeaderInputType > ,
1821 // Search input
1922 PageQueryParam < 'search' , string > ,
2023 PageQueryParamMultiValue < 'statuses' , Array < WorkflowStatus > | undefined > ,
2124 PageQueryParam < 'timeRangeStart' , Date | undefined > ,
22- PageQueryParam < 'timeRangeEnd' , Date | undefined > ,
25+ PageQueryParam < 'timeRangeEnd' , Date > ,
2326 PageQueryParam < 'sortColumn' , string > ,
2427 PageQueryParam < 'sortOrder' , SortOrder > ,
2528 // Query input
@@ -37,8 +40,8 @@ const domainPageQueryParamsConfig: [
3740 'statusesArchival' ,
3841 Array < WorkflowStatusClosed > | undefined
3942 > ,
40- PageQueryParam < 'timeRangeStartArchival' , Date | undefined > ,
41- PageQueryParam < 'timeRangeEndArchival' , Date | undefined > ,
43+ PageQueryParam < 'timeRangeStartArchival' , Date > ,
44+ PageQueryParam < 'timeRangeEndArchival' , Date > ,
4245 PageQueryParam < 'sortColumnArchival' , string > ,
4346 PageQueryParam < 'sortOrderArchival' , SortOrder > ,
4447 PageQueryParam < 'queryArchival' , string > ,
@@ -68,7 +71,8 @@ const domainPageQueryParamsConfig: [
6871 {
6972 key : 'timeRangeEnd' ,
7073 queryParamKey : 'end' ,
71- parseValue : parseDateQueryParam ,
74+ defaultValue : now . toDate ( ) ,
75+ parseValue : ( v ) => parseDateQueryParam ( v ) ?? now . toDate ( ) ,
7276 } ,
7377 {
7478 key : 'sortColumn' ,
@@ -102,20 +106,18 @@ const domainPageQueryParamsConfig: [
102106 {
103107 key : 'timeRangeStartBasic' ,
104108 queryParamKey : 'start' ,
105- defaultValue : dayjs ( )
109+ defaultValue : now
106110 . subtract ( DOMAIN_WORKFLOWS_BASIC_START_DAYS_CONFIG , 'days' )
107111 . toDate ( ) ,
108112 parseValue : ( v ) =>
109113 parseDateQueryParam ( v ) ??
110- dayjs ( )
111- . subtract ( DOMAIN_WORKFLOWS_BASIC_START_DAYS_CONFIG , 'days' )
112- . toDate ( ) ,
114+ now . subtract ( DOMAIN_WORKFLOWS_BASIC_START_DAYS_CONFIG , 'days' ) . toDate ( ) ,
113115 } ,
114116 {
115117 key : 'timeRangeEndBasic' ,
116118 queryParamKey : 'end' ,
117- defaultValue : dayjs ( ) . toDate ( ) ,
118- parseValue : ( v ) => parseDateQueryParam ( v ) ?? dayjs ( ) . toDate ( ) ,
119+ defaultValue : now . toDate ( ) ,
120+ parseValue : ( v ) => parseDateQueryParam ( v ) ?? now . toDate ( ) ,
119121 } ,
120122 {
121123 key : 'inputTypeArchival' ,
@@ -144,12 +146,20 @@ const domainPageQueryParamsConfig: [
144146 {
145147 key : 'timeRangeStartArchival' ,
146148 queryParamKey : 'astart' ,
147- parseValue : parseDateQueryParam ,
149+ defaultValue : now
150+ . subtract ( DOMAIN_WORKFLOWS_ARCHIVAL_START_DAYS_CONFIG , 'days' )
151+ . toDate ( ) ,
152+ parseValue : ( v ) =>
153+ parseDateQueryParam ( v ) ??
154+ now
155+ . subtract ( DOMAIN_WORKFLOWS_ARCHIVAL_START_DAYS_CONFIG , 'days' )
156+ . toDate ( ) ,
148157 } ,
149158 {
150159 key : 'timeRangeEndArchival' ,
151160 queryParamKey : 'aend' ,
152- parseValue : parseDateQueryParam ,
161+ defaultValue : now . toDate ( ) ,
162+ parseValue : ( v ) => parseDateQueryParam ( v ) ?? now . toDate ( ) ,
153163 } ,
154164 {
155165 key : 'sortColumnArchival' ,
0 commit comments