@@ -132,8 +132,8 @@ type PickerType =
132132
133133type QuestionDateExtraSettings = {
134134 dateRange? : boolean
135- dateMax? : number | null
136- dateMin? : number | null
135+ dateMax? : string | number | null
136+ dateMin? : string | number | null
137137 timeRange? : boolean
138138 timeMax? : string | null
139139 timeMin? : string | null
@@ -183,11 +183,11 @@ export default defineComponent({
183183 /**
184184 * Form expires timestamp to Date of the datepicker
185185 *
186- * @param value the expires timestamp
186+ * @param value the expires timestamp or formatted date string
187187 * @return
188188 */
189- const parseTimestampToDate = (value : number ): Date => {
190- return moment (value , ' X' ).toDate ()
189+ const parseTimestampToDate = (value : string | number ): Date => {
190+ return moment (value , [ props . answerType . storageFormat , ' X' ] ).toDate ()
191191 }
192192
193193 /**
@@ -251,7 +251,10 @@ export default defineComponent({
251251 */
252252 const dateMax = computed <Date | undefined >(() => {
253253 return extraSettings .value .dateMax
254- ? moment (extraSettings .value .dateMax , ' X' ).toDate ()
254+ ? moment (extraSettings .value .dateMax , [
255+ props .answerType .storageFormat ,
256+ ' X' ,
257+ ]).toDate ()
255258 : undefined
256259 })
257260
@@ -260,7 +263,10 @@ export default defineComponent({
260263 */
261264 const dateMin = computed <Date | undefined >(() => {
262265 return extraSettings .value .dateMin
263- ? moment (extraSettings .value .dateMin , ' X' ).toDate ()
266+ ? moment (extraSettings .value .dateMin , [
267+ props .answerType .storageFormat ,
268+ ' X' ,
269+ ]).toDate ()
264270 : undefined
265271 })
266272
@@ -315,9 +321,12 @@ export default defineComponent({
315321 *
316322 * @param value - The new maximum date value. Can be a string or a Date object.
317323 */
318- const onDateMaxChange = (value : string | Date ): void => {
324+ const onDateMaxChange = (value : string | Date | null ): void => {
319325 question .onExtraSettingsChange ({
320- dateMax: parseInt (moment (value ).format (' X' )),
326+ dateMax:
327+ value === null || value === ' '
328+ ? null
329+ : moment (value ).format (props .answerType .storageFormat ),
321330 })
322331 }
323332
@@ -327,9 +336,12 @@ export default defineComponent({
327336 *
328337 * @param value - The new minimum date value. Can be a string or a Date object.
329338 */
330- const onDateMinChange = (value : string | Date ): void => {
339+ const onDateMinChange = (value : string | Date | null ): void => {
331340 question .onExtraSettingsChange ({
332- dateMin: parseInt (moment (value ).format (' X' )),
341+ dateMin:
342+ value === null || value === ' '
343+ ? null
344+ : moment (value ).format (props .answerType .storageFormat ),
333345 })
334346 }
335347
0 commit comments