From 9b7e5a29117f9d92637d2bd106096b302bbeead9 Mon Sep 17 00:00:00 2001 From: Ramesh Mane <101566080+rameshmane7218@users.noreply.github.com> Date: Fri, 5 Apr 2024 17:33:27 +0530 Subject: [PATCH] Nc feat/manually feed value for date time related fields (#8015) * fix(nc-gui): allow manual feed value for date & dateTime field * fix(nc-gui): add support to manually enter datetime field value * fix(nc-gui): allow user to type date time field manually * fix(nc-gui): on type in date time field should open date picker and fill value * feat(nc-gui): allow user to manually enter date field value * fix(nc-gui): allow user to manually enter year field value * feat(nc-gui): allow user to manually feed time field value * fix(nc-gui): pw test fail issue * fix(nc-gui): pw test fail issue of time field * chore(nc-gui): lint * fix(nc-gui): on type in selected grid cell clear prev value and feed new value * fix(nc-gui): on press enter date field should focus * fix(nc-gui): small changes * fix(nc-gui): year field cell value should be left aligned * fix(nc-gui): cell padding issue * fix(nc-gui): Use of escape any number of times should not make selected cell go away in grid view. * fix(nc-gui): hide clear default value icon in edit column modal * fix(nc-gui): on enter key press in date time related field it should select next cell field * fix(nc-gui): date time related field keydown listener issue * fix(nc-gui): disable manually enter value for date time related field in mobile device * fix(nc-gui): revert use of escape any number of times should not make selected cell go away --------- Co-authored-by: Raju Udava <86527202+dstala@users.noreply.github.com> --- .../nc-gui/components/cell/DatePicker.vue | 230 ++++++++-------- .../nc-gui/components/cell/DateTimePicker.vue | 253 +++++++++--------- .../nc-gui/components/cell/TimePicker.vue | 148 +++++++--- .../nc-gui/components/cell/YearPicker.vue | 155 +++++++---- .../nc-gui/components/smartsheet/Cell.vue | 14 +- .../components/smartsheet/grid/Table.vue | 2 +- .../pages/Dashboard/common/Cell/TimeCell.ts | 2 +- 7 files changed, 463 insertions(+), 341 deletions(-) diff --git a/packages/nc-gui/components/cell/DatePicker.vue b/packages/nc-gui/components/cell/DatePicker.vue index 9b0cc6d98b..2151515cb5 100644 --- a/packages/nc-gui/components/cell/DatePicker.vue +++ b/packages/nc-gui/components/cell/DatePicker.vue @@ -1,17 +1,15 @@ diff --git a/packages/nc-gui/components/smartsheet/grid/Table.vue b/packages/nc-gui/components/smartsheet/grid/Table.vue index 0052fade7e..db9b607149 100644 --- a/packages/nc-gui/components/smartsheet/grid/Table.vue +++ b/packages/nc-gui/components/smartsheet/grid/Table.vue @@ -585,7 +585,7 @@ const { // ignore navigating if picker(Date, Time, DateTime, Year) // or single/multi select options is open const activePickerOrDropdownEl = document.querySelector( - '.nc-picker-datetime.active,.nc-dropdown-single-select-cell.active,.nc-dropdown-multi-select-cell.active,.nc-picker-date.active,.nc-picker-year.active,.nc-picker-time.active', + '.nc-dropdown-single-select-cell.active,.nc-dropdown-multi-select-cell.active', ) if (activePickerOrDropdownEl) { e.preventDefault() diff --git a/tests/playwright/pages/Dashboard/common/Cell/TimeCell.ts b/tests/playwright/pages/Dashboard/common/Cell/TimeCell.ts index 283217e83a..6c62eb1686 100644 --- a/tests/playwright/pages/Dashboard/common/Cell/TimeCell.ts +++ b/tests/playwright/pages/Dashboard/common/Cell/TimeCell.ts @@ -48,7 +48,7 @@ export class TimeCellPageObject extends BasePage { async set({ index, columnHeader, value }: { index: number; columnHeader: string; value: string }) { const [hour, minute, _second] = value.split(':'); await this.get({ index, columnHeader }).click(); - await this.get({ index, columnHeader }).click(); + await this.get({ index, columnHeader }).dblclick(); await this.selectTime({ hour: +hour, minute: +minute }); await this.save(); }