fix: Refactor WorkspaceAction and add handleStartFromTemplate method to Applications (#31168)
## Description Start from templates is not workin on release and prod, this PR handles class based components' callback differently. This pull request includes the following changes: - Refactor WorkspaceAction component - Add handleStartFromTemplate method to Applications component #### PR fixes following issue(s) Fixes # (issue number) > if no issue exists, please create an issue and ask the maintainers about this first > > #### Media > A video or a GIF is preferred. when using Loom, don’t embed because it looks like it’s a GIF. instead, just link to the video > > #### Type of change > Please delete options that are not relevant. - Bug fix (non-breaking change which fixes an issue) - New feature (non-breaking change which adds functionality) - Breaking change (fix or feature that would cause existing functionality to not work as expected) - Chore (housekeeping or task changes that don't impact user perception) - This change requires a documentation update > > > ## Testing > #### How Has This Been Tested? > Please describe the tests that you ran to verify your changes. Also list any relevant details for your test configuration. > Delete anything that is not relevant - [ ] Manual - [ ] JUnit - [ ] Jest - [ ] 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 - [ ] My code follows the style guidelines of this project - [ ] I have performed a self-review of my own code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have made corresponding changes to the documentation - [ ] My changes generate no new warnings - [ ] 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: - [ ] [Speedbreak features](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#speedbreakers-) have been covered - [ ] Test plan covers all impacted features and [areas of interest](https://github.com/appsmithorg/TestSmith/wiki/Guidelines-for-test-plans#areas-of-interest-) - [ ] Test plan has been peer reviewed by project stakeholders and other QA members - [ ] Manually tested functionality on DP - [ ] We had an implementation alignment call with stakeholders post QA Round 2 - [ ] Cypress test cases have been added and approved by SDET/manual QA - [ ] Added `Test Plan Approved` label after Cypress tests were reviewed - [ ] Added `Test Plan Approved` label after JUnit tests were reviewed <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Improved the structure and readability of the code related to the "Start from Template" feature in the applications area for better maintainability. - **New Features** - Enhanced the "Start from Template" functionality for a smoother user experience. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
parent
91fea4fbe0
commit
b9e0adc454
|
|
@ -95,20 +95,17 @@ function WorkspaceAction({
|
|||
>
|
||||
{createMessage(NEW_APP)}
|
||||
</MenuItem>
|
||||
{<Divider className="!block mb-[2px]" />}
|
||||
{isCreateAppFromTemplatesEnabled && (
|
||||
<>
|
||||
<Divider className="!block mb-[2px]" />
|
||||
<MenuItem
|
||||
data-testid="t--workspace-action-start-from-template"
|
||||
disabled={!hasCreateNewApplicationPermission}
|
||||
onSelect={() => onStartFromTemplate(workspaceId)}
|
||||
startIcon="layout-2-line"
|
||||
>
|
||||
{createMessage(NEW_APP_FROM_TEMPLATE)}
|
||||
</MenuItem>
|
||||
</>
|
||||
<MenuItem
|
||||
data-testid="t--workspace-action-start-from-template"
|
||||
disabled={!hasCreateNewApplicationPermission}
|
||||
onSelect={() => onStartFromTemplate(workspaceId)}
|
||||
startIcon="layout-2-line"
|
||||
>
|
||||
{createMessage(NEW_APP_FROM_TEMPLATE)}
|
||||
</MenuItem>
|
||||
)}
|
||||
<Divider className="!block mb-[2px]" />
|
||||
{enableImportExport && hasCreateNewApplicationPermission && (
|
||||
<MenuItem
|
||||
data-testid="t--workspace-import-app"
|
||||
|
|
|
|||
|
|
@ -1057,6 +1057,10 @@ export class Applications<
|
|||
this.props.searchApplications("");
|
||||
}
|
||||
|
||||
handleStartFromTemplate() {
|
||||
this.setState({ startFromTemplate: true });
|
||||
}
|
||||
|
||||
public render() {
|
||||
if (this.props.currentApplicationIdForCreateNewApp) {
|
||||
// FOR NEW USER
|
||||
|
|
@ -1076,9 +1080,7 @@ export class Applications<
|
|||
return (
|
||||
<>
|
||||
<ApplictionsMainPage
|
||||
onStartFromTemplateClick={() => {
|
||||
this.setState({ startFromTemplate: true });
|
||||
}}
|
||||
onStartFromTemplateClick={this.handleStartFromTemplate.bind(this)}
|
||||
searchApplications={this.props.searchApplications}
|
||||
searchKeyword={this.props.searchKeyword}
|
||||
/>
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user