## Description Refactoring entity types and updating DS action create permission to fix some bugs on EE #### PR fixes following issue(s) Fixes # (issue number) #### Type of change - Chore (housekeeping or task changes that don't impact user perception) ## Testing #### How Has This Been Tested? - [x] Manual - [ ] JUnit - [x] Jest - [x] Cypress ## 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 - [ ] I have added tests that prove my fix is effective or that my feature works - [x] 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** - Streamlined entity type naming conventions across the application for better consistency. - Enhanced type definitions for improved code clarity and maintainability. - Updated function calls to use object parameters with named properties for better readability. - **New Features** - Introduced a new entity type for module instances, expanding the application's data handling capabilities. - **Bug Fixes** - Corrected improper type assertions to ensure accurate entity recognition and processing. - **Documentation** - Added comments to clarify the non-introduction of certain dependencies in specific components. - **Style** - Adjusted import statements to align with the updated naming conventions. - **Tests** - Updated test cases to reflect changes in entity type references and assertions. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
35 lines
1.2 KiB
TypeScript
35 lines
1.2 KiB
TypeScript
import type { WidgetEntity } from "@appsmith/entities/DataTree/types";
|
|
import type { DataTree } from "entities/DataTree/dataTreeTypes";
|
|
import { ENTITY_TYPE } from "entities/DataTree/dataTreeFactory";
|
|
import { builderURL } from "@appsmith/RouteBuilder";
|
|
import type { EntityNavigationData } from "selectors/navigationSelectors";
|
|
import { createNavData } from "./common";
|
|
|
|
export const getWidgetChildrenNavData = (
|
|
widgetName: string,
|
|
widgetType: string,
|
|
dataTree: DataTree,
|
|
pageId: string,
|
|
) => {
|
|
const dataTreeWidget: WidgetEntity = dataTree[widgetName] as WidgetEntity;
|
|
if (widgetType === "FORM_WIDGET") {
|
|
const children: EntityNavigationData = {};
|
|
const formChildren: EntityNavigationData = {};
|
|
if (dataTreeWidget) {
|
|
Object.keys(dataTreeWidget.data || {}).forEach((childWidgetName) => {
|
|
const childWidgetId = (dataTree[childWidgetName] as WidgetEntity)
|
|
.widgetId;
|
|
formChildren[childWidgetName] = createNavData({
|
|
id: `${widgetName}.data.${childWidgetName}`,
|
|
name: childWidgetName,
|
|
type: ENTITY_TYPE.WIDGET,
|
|
url: builderURL({ pageId, hash: childWidgetId }),
|
|
children: {},
|
|
});
|
|
});
|
|
}
|
|
|
|
return { childNavData: children };
|
|
}
|
|
};
|