diff --git a/packages/nc-gui/components/dlg/ViewCreate.vue b/packages/nc-gui/components/dlg/ViewCreate.vue index 7d3aaba442..072794eafe 100644 --- a/packages/nc-gui/components/dlg/ViewCreate.vue +++ b/packages/nc-gui/components/dlg/ViewCreate.vue @@ -35,7 +35,7 @@ interface Form { fk_geo_data_col_id: string | null // for calendar view only - calendarRange: Array<{ + calendar_range: Array<{ fk_from_column_id: string fk_to_column_id: string | undefined // for ee only }> @@ -88,15 +88,7 @@ const form = reactive
({ copy_from_id: null, fk_grp_col_id: null, fk_geo_data_col_id: null, - calendarRange: - ViewTypes.CALENDAR === props.type - ? props.calendarRange - : [ - { - fk_from_column_id: '', - fk_to_column_id: null, - }, - ], + calendar_range: props.calendarRange || [], }) const viewSelectFieldOptions = ref([]) @@ -197,7 +189,7 @@ async function onSubmit() { case ViewTypes.CALENDAR: data = await api.dbView.calendarCreate(tableId.value, { ...form, - calendar_range: form.calendarRange.map((range) => ({ + calendar_range: form.calendar_range.map((range) => ({ fk_from_column_id: range.fk_from_column_id, fk_to_column_id: range.fk_to_column_id, })), @@ -226,7 +218,7 @@ async function onSubmit() { } const addCalendarRange = async () => { - form.calendarRange.push({ + form.calendar_range.push({ fk_from_column_id: viewSelectFieldOptions.value[0].value, fk_to_column_id: null, }) @@ -298,12 +290,14 @@ onMounted(async () => { if (viewSelectFieldOptions.value?.length) { // take the first option - form.calendarRange = [ - { - fk_from_column_id: viewSelectFieldOptions.value[0].value as string, - fk_to_column_id: null, // for ee only - }, - ] + if (form.calendar_range.length === 0) { + form.calendar_range = [ + { + fk_from_column_id: viewSelectFieldOptions.value[0].value as string, + fk_to_column_id: null, // for ee only + }, + ] + } } else { // if there is no grouping field column, disable the create button isNecessaryColumnsPresent.value = false @@ -431,7 +425,7 @@ onMounted(async () => { />