fix: use single click instead of double click to open new event panel

This commit is contained in:
Shariq Ansari 2025-08-07 17:16:02 +05:30
parent 202ba3c856
commit 6ec2c1e805
2 changed files with 19 additions and 2 deletions

View File

@ -251,7 +251,7 @@ watch(
} }
nextTick(() => { nextTick(() => {
if (props.mode === 'create') { if (props.mode === 'create' && _event.value.id === 'new-event') {
_event.value.fromDate = newEvent.fromDate _event.value.fromDate = newEvent.fromDate
_event.value.toDate = newEvent.toDate _event.value.toDate = newEvent.toDate
_event.value.fromTime = newEvent.fromTime _event.value.fromTime = newEvent.fromTime

View File

@ -29,7 +29,7 @@
@delete="(eventID) => deleteEvent(eventID)" @delete="(eventID) => deleteEvent(eventID)"
:onClick="showDetails" :onClick="showDetails"
:onDblClick="editDetails" :onDblClick="editDetails"
:onCellDblClick="newEvent" :onCellClick="newEvent"
> >
<template <template
#header="{ #header="{
@ -246,6 +246,12 @@ const mode = ref('')
function showDetails(e) { function showDetails(e) {
let _e = e?.calendarEvent || e let _e = e?.calendarEvent || e
if (_e.id === 'new-event' || _e.id === 'duplicate-event') return
events.data = events.data.filter(
(ev) => ev.id !== 'new-event' && ev.id !== 'duplicate-event',
)
showEventPanel.value = true showEventPanel.value = true
event.value = { ..._e } event.value = { ..._e }
activeEvent.value = _e.id activeEvent.value = _e.id
@ -254,6 +260,12 @@ function showDetails(e) {
function editDetails(e) { function editDetails(e) {
let _e = e?.calendarEvent || e let _e = e?.calendarEvent || e
if (_e.id === 'new-event' || _e.id === 'duplicate-event') return
events.data = events.data.filter(
(ev) => ev.id !== 'new-event' && ev.id !== 'duplicate-event',
)
showEventPanel.value = true showEventPanel.value = true
event.value = { ..._e } event.value = { ..._e }
activeEvent.value = _e.id activeEvent.value = _e.id
@ -261,6 +273,10 @@ function editDetails(e) {
} }
function newEvent(e, duplicate = false) { function newEvent(e, duplicate = false) {
events.data = events.data.filter(
(ev) => ev.id !== 'new-event' && ev.id !== 'duplicate-event',
)
let fromTime = e.fromTime let fromTime = e.fromTime
let toTime = e.toTime let toTime = e.toTime
let fromDate = e.fromDate let fromDate = e.fromDate
@ -270,6 +286,7 @@ function newEvent(e, duplicate = false) {
fromTime = t[0] fromTime = t[0]
toTime = t[1] toTime = t[1]
fromDate = dayjs(e.date).format('YYYY-MM-DD') fromDate = dayjs(e.date).format('YYYY-MM-DD')
e = { fromDate, fromTime, toTime }
} }
showEventPanel.value = true showEventPanel.value = true