appsmith
appsmith copied to clipboard
feat: Date column type editing for table widget
- Integrates Date picker component inside table's date column
- Enables edit mode for date type column in table widget
- Adds all the required Property controls for date picker
- Builds the user flow for date column editing in table widget
Description
PRD - https://www.notion.so/appsmith/Date-and-date-time-in-table-c9e292188eff4604a9f2b3c91aca1efb
Fixes #13682
Type of change
- New feature (non-breaking change which adds functionality)
- This change requires a documentation update
How Has This Been Tested?
- Cypress
Test Plan
Add Testsmith test cases links that relate to this PR
Issues raised during DP testing
Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)
Checklist:
Dev activity
- [x] My code follows the style guidelines of this project
- [x] I have performed a self-review of my own code
- [x] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] PR is being merged under a feature flag
QA activity:
- [ ] Test plan has been approved by relevant developers
- [ ] Test plan has been peer reviewed by QA
- [ ] Cypress test cases have been added and approved by either SDET or manual QA
- [ ] Organized project review call with relevant stakeholders after Round 1/2 of QA
- [ ] Added Test Plan Approved label after reveiwing all Cypress test
The latest updates on your projects. Learn more about Vercel for Git ↗︎
| Name | Status | Preview | Updated |
|---|---|---|---|
| appsmith | ✅ Ready (Inspect) | Visit Preview | Jan 13, 2023 at 5:13AM (UTC) |
/ok-to-test sha=2d65712
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3829845942.
Workflow: Appsmith External Integration Test Workflow.
Commit: 2d65712.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3829845942_1
/ok-to-test sha=e66d61f
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3837521600.
Workflow: Appsmith External Integration Test Workflow.
Commit: e66d61f.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3837521600_1
/ok-to-test sha=c9b8915
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3837589362.
Workflow: Appsmith External Integration Test Workflow.
Commit: c9b8915.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3837589362_1
/ok-to-test sha=f081b14
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3845798090.
Workflow: Appsmith External Integration Test Workflow.
Commit: f081b14.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3845798090_1
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_Existing_app_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/JSEditorIndent_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Date_column_editing_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Inline_editing_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Text_wrapping_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/inline_editing_validations_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts
Few Observations @souma-ghosh
-
Calendar popup is getting closed when clicking on time field to edit the time Video: https://bthrujcsw8.vmaker.com/record/yqXbotjVZCvzIkzY
-
Border Radius are not applied to calendar popup as per theming settings Refer above video and notice that Theming has Rounded box radius but calendar is in square shape
-
Remove onSubmit property from Property pane (as discussed)
/ok-to-test sha=131a3c7
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3847159684.
Workflow: Appsmith External Integration Test Workflow.
Commit: 131a3c7.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3847159684_1
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitImport/GitImport_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitImport/ImportEmptyRepo_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Connection_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/DeleteBranch_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Deploy_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/DisconnectGit_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Merge_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/RegenerateSSHKey_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/RepoLimitExceededErrorModal_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitWithTheming/GitWithTheming_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/AppPageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/WidgetsLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Form/FormWidget_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Date_column_editing_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Text_wrapping_spec.js
Few Observations @souma-ghosh
- Calendar popup is getting closed when clicking on time field to edit the time Video: https://bthrujcsw8.vmaker.com/record/yqXbotjVZCvzIkzY
- Border Radius are not applied to calendar popup as per theming settings Refer above video and notice that Theming has Rounded box radius but calendar is in square shape
- Remove onSubmit property from Property pane (as discussed)
@dilippitchika For No.1 Since we are depending heavily on onChange event to trigger the events for date selection this is happening. When user changes the time in hour and goes to minute then the bluepirnt/dateinput triggers the onChange and hence it closes. This won't happen for date picker widget or the date cell during add new row as there we are not relying on onChange to do anything else other than changing the date value.
/ok-to-test sha=c3a232a
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3853656338.
Workflow: Appsmith External Integration Test Workflow.
Commit: c3a232a.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3853656338_1
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/GitBugs_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/DatasourcePageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Date_column_editing_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite_Fat/ClientSideTests/Refactoring/Refactoring_spec.ts
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/GitBugs_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/DatasourcePageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/Date_column_editing_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts
The following are new failures, please fix them before merging the PR
/ok-to-test sha=6223436
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3881313965.
Workflow: Appsmith External Integration Test Workflow.
Commit: 6223436.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3881313965_1
Few Observations @souma-ghosh
- Calendar popup is getting closed when clicking on time field to edit the time Video: https://bthrujcsw8.vmaker.com/record/yqXbotjVZCvzIkzY
- Border Radius are not applied to calendar popup as per theming settings Refer above video and notice that Theming has Rounded box radius but calendar is in square shape
- Remove onSubmit property from Property pane (as discussed)
@chandannkumar For No. 1 we are hiding the time field inside date picker for now. This should get resolved when we use a different library from blueprint for date editing. Along with this Time Precision setting has also been hidden.
No. 2 and 3 have been fixed.
Additionally we have moved the date picker related settings under Date Settings in property control for date type columns.
Please move ahead with the QA
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_Existing_app_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Image/Image_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_Existing_app_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts
/ok-to-test sha=527dfa7
Tests running at: https://github.com/appsmithorg/appsmith/actions/runs/3900056529.
Workflow: Appsmith External Integration Test Workflow.
Commit: 527dfa7.
PR: 19181.
Perf tests will be available at https://app.appsmith.com/app/performance-infra-dashboard/pr-details-638dd7cd2913ba43778b915e?pr=19181&runId=3900056529_1
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/Autocomplete/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_TableTextPagination_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_TableV2TextPagination_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_Table_Widget_API_Derived_Column_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_dataToTableV2WithSnipingMode_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_dataToTableWithSnipingMode_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Bug16377_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitDiscardChange/DiscardChanges_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitImport/GitImport_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitImport/ImportEmptyRepo_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Connection_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/DeleteBranch_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Deploy_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/DisconnectGit_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/GitBugs_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Merge_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/RegenerateSSHKey_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/RepoLimitExceededErrorModal_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/SwitchBranches_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitWithTheming/GitWithTheming_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/IDE/Command_Click_Navigation_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Onboarding/GuidedTour_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/ApplicationURL_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/ForkApplication_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/Logs_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_To_App_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/AppPageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/DatasourcePageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/JSEditorComment_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/JSEditorIndent_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/WidgetsLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Button/Button_onClickAction_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Dropdown/Dropdown_onOptionChange_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Form/FormWidget_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV1/Table_Derived_Column_Data_validation_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV1/Table_Property_JsonUpdate_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/TableV2_Property_JsonUpdate_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Workspace/ShareAppTests_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Edit_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Response_View_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/CurlImportFlow_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/GenerateCRUD/Postgres2_Spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/SetTimeout_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/OnLoadTests/ExecuteAction_Spec.ts
The following are new failures, please fix them before merging the PR cypress/integration/Smoke_TestSuite/ClientSideTests/Autocomplete/Autocomplete_JS_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_TableTextPagination_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_TableV2TextPagination_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_Table_Widget_API_Derived_Column_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_dataToTableV2WithSnipingMode_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_dataToTableV2WithSnipingMode_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Binding/Bind_dataToTableWithSnipingMode_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/BugTests/Bug16377_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitDiscardChange/DiscardChanges_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/DeleteBranch_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/Deploy_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/GitBugs_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/GitBugs_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Git/GitSync/SwitchBranches_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Onboarding/GuidedTour_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/ApplicationURL_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/Logs_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/OtherUIFeatures/Logs_spec.ts cypress/integration/Smoke_TestSuite/ClientSideTests/Templates/Fork_Template_To_App_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/AppPageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/AppPageLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/JSEditorIndent_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/VisualTests/WidgetsLayout_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Button/Button_onClickAction_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Dropdown/Dropdown_onOptionChange_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/Form/FormWidget_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV1/Table_Derived_Column_Data_validation_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV1/Table_Property_JsonUpdate_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV1/Table_Property_JsonUpdate_spec.js cypress/integration/Smoke_TestSuite/ClientSideTests/Widgets/TableV2/TableV2_Property_JsonUpdate_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Edit_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Edit_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Response_View_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/API_Response_View_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/ApiTests/CurlImportFlow_spec.js cypress/integration/Smoke_TestSuite/ServerSideTests/GenerateCRUD/Postgres2_Spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/JSFunctionExecution_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/SetTimeout_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/JsFunctionExecution/SetTimeout_spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/OnLoadTests/ExecuteAction_Spec.ts cypress/integration/Smoke_TestSuite/ServerSideTests/OnLoadTests/ExecuteAction_Spec.ts