diff --git a/app/client/src/ce/IDE/Interfaces/IDETypes.ts b/app/client/src/ce/IDE/Interfaces/IDETypes.ts index 525d543603ce..03de61336173 100644 --- a/app/client/src/ce/IDE/Interfaces/IDETypes.ts +++ b/app/client/src/ce/IDE/Interfaces/IDETypes.ts @@ -1,6 +1,7 @@ export const IDE_TYPE = { None: "None", App: "App", + UIPackage: "UIPackage", } as const; export type IDEType = keyof typeof IDE_TYPE; diff --git a/app/client/src/ce/IDE/constants/routes.ts b/app/client/src/ce/IDE/constants/routes.ts index 114075e8ac44..2f96deb54409 100644 --- a/app/client/src/ce/IDE/constants/routes.ts +++ b/app/client/src/ce/IDE/constants/routes.ts @@ -41,4 +41,5 @@ export const EntityPaths: string[] = [ export const IDEBasePaths: Readonly> = { [IDE_TYPE.None]: [], [IDE_TYPE.App]: [BUILDER_PATH, BUILDER_PATH_DEPRECATED, BUILDER_CUSTOM_PATH], + [IDE_TYPE.UIPackage]: [], }; diff --git a/app/client/src/ce/pages/Editor/Explorer/helpers.tsx b/app/client/src/ce/pages/Editor/Explorer/helpers.tsx index 45b665e0d59d..2963d74d66bc 100644 --- a/app/client/src/ce/pages/Editor/Explorer/helpers.tsx +++ b/app/client/src/ce/pages/Editor/Explorer/helpers.tsx @@ -116,6 +116,12 @@ export const isViewerPath = (path: string) => { return !!matchViewerPath(path); }; +// Extended in EE +// eslint-disable-next-line @typescript-eslint/no-unused-vars +export const isUIPackageEditorPath = (path: string) => { + return false; +}; + export const getJSCollectionIdFromURL = () => { const baseMatch = matchBasePath(window.location.pathname); diff --git a/app/client/src/ce/sagas/NavigationSagas.ts b/app/client/src/ce/sagas/NavigationSagas.ts index ea8b37fc8d6c..c04251321943 100644 --- a/app/client/src/ce/sagas/NavigationSagas.ts +++ b/app/client/src/ce/sagas/NavigationSagas.ts @@ -137,7 +137,7 @@ function* logNavigationAnalytics(payload: RouteChangeActionPayload) { }); } -function* setSelectedWidgetsSaga(invokedBy?: NavigationMethod) { +export function* setSelectedWidgetsSaga(invokedBy?: NavigationMethod) { const pathname = window.location.pathname; const entityInfo = identifyEntityFromPath(pathname); let widgets: string[] = []; diff --git a/app/client/src/ce/sagas/moduleInterfaceSagas.ts b/app/client/src/ce/sagas/moduleInterfaceSagas.ts index a0cd7b3cb0a8..16f5d84e3e93 100644 --- a/app/client/src/ce/sagas/moduleInterfaceSagas.ts +++ b/app/client/src/ce/sagas/moduleInterfaceSagas.ts @@ -7,7 +7,9 @@ * between core widget operations and module-specific features available in the enterprise version. */ import type { WidgetAddChild } from "actions/pageActions"; +import type { ReduxAction } from "actions/ReduxActionTypes"; import type { CanvasWidgetsReduxState } from "ee/reducers/entityReducers/canvasWidgetsReducer"; +import type { Saga } from "redux-saga"; export interface HandleModuleWidgetCreationSagaPayload { addChildPayload: WidgetAddChild; @@ -19,3 +21,10 @@ export function* handleModuleWidgetCreationSaga( ) { return props.widgets; } + +export function* waitForPackageInitialization( + // eslint-disable-next-line @typescript-eslint/no-unused-vars + saga: Saga, + // eslint-disable-next-line @typescript-eslint/no-unused-vars + action: ReduxAction, +) {} diff --git a/app/client/src/pages/Editor/PropertyPane/PropertyPaneView.tsx b/app/client/src/pages/Editor/PropertyPane/PropertyPaneView.tsx index 7ea1bac2181b..3e0b73db2f6a 100644 --- a/app/client/src/pages/Editor/PropertyPane/PropertyPaneView.tsx +++ b/app/client/src/pages/Editor/PropertyPane/PropertyPaneView.tsx @@ -216,7 +216,7 @@ function PropertyPaneView( tooltipContent: string; icon: ReactElement; }> => { - return [ + const widgetActions = [ { tooltipContent: createMessage(CONTEXT_INSPECT_STATE), icon: ( @@ -237,7 +237,10 @@ function PropertyPaneView( /> ), }, - { + ]; + + if (widgetProperties?.isDeletable !== false) { + widgetActions.push({ tooltipContent: "Delete widget", icon: (