diff --git a/app/client/src/actions/onboardingActions.ts b/app/client/src/actions/onboardingActions.ts index 8d73222924a4..21dd18ec20a9 100644 --- a/app/client/src/actions/onboardingActions.ts +++ b/app/client/src/actions/onboardingActions.ts @@ -71,3 +71,10 @@ export const showEndOnboardingHelper = () => { type: ReduxActionTypes.SHOW_END_ONBOARDING_HELPER, }; }; + +export const toggleInOnboardingWidgetSelection = (payload: boolean) => { + return { + type: ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION, + payload, + }; +}; diff --git a/app/client/src/actions/widgetSidebarActions.tsx b/app/client/src/actions/widgetSidebarActions.tsx index aec2b71633db..d783c0b05080 100644 --- a/app/client/src/actions/widgetSidebarActions.tsx +++ b/app/client/src/actions/widgetSidebarActions.tsx @@ -26,6 +26,11 @@ export const successFetchingWidgetCards = (cards: { }; }; +export const forceOpenWidgetPanel = (flag: boolean) => ({ + type: ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN, + payload: flag, +}); + export default { fetchWidgetCards, errorFetchingWidgetCards, diff --git a/app/client/src/components/editorComponents/Sidebar.tsx b/app/client/src/components/editorComponents/Sidebar.tsx index 73093e7658ef..10b448daf6e2 100644 --- a/app/client/src/components/editorComponents/Sidebar.tsx +++ b/app/client/src/components/editorComponents/Sidebar.tsx @@ -8,6 +8,12 @@ import PerformanceTracker, { PerformanceTransactionName, } from "utils/PerformanceTracker"; import { Layers } from "constants/Layers"; +import { useSelector } from "store"; +import { + getFirstTimeUserOnboardingComplete, + getIsFirstTimeUserOnboardingEnabled, +} from "selectors/onboardingSelectors"; +import OnboardingStatusbar from "pages/Editor/FirstTimeUserOnboarding/Statusbar"; const SidebarWrapper = styled.div` background-color: ${Colors.MINE_SHAFT}; @@ -28,12 +34,21 @@ const SidebarWrapper = styled.div` const initialPanel = { component: ExplorerSidebar }; export const Sidebar = memo(() => { + const enableFirstTimeUserOnboarding = useSelector( + getIsFirstTimeUserOnboardingEnabled, + ); + const isFirstTimeUserOnboardingComplete = useSelector( + getFirstTimeUserOnboardingComplete, + ); PerformanceTracker.startTracking(PerformanceTransactionName.SIDE_BAR_MOUNT); useEffect(() => { PerformanceTracker.stopTracking(); }); return ( + {(enableFirstTimeUserOnboarding || isFirstTimeUserOnboardingComplete) && ( + + )} ); diff --git a/app/client/src/constants/DefaultTheme.tsx b/app/client/src/constants/DefaultTheme.tsx index 9e945619dae8..888c8dab6475 100644 --- a/app/client/src/constants/DefaultTheme.tsx +++ b/app/client/src/constants/DefaultTheme.tsx @@ -2665,6 +2665,12 @@ export const theme: Theme = { letterSpacing: -0.221538, fontWeight: "normal", }, + p4: { + fontSize: 13, + lineHeight: 16, + letterSpacing: -0.221538, + fontWeight: 600, + }, btnLarge: { fontSize: 13, lineHeight: 15, diff --git a/app/client/src/constants/ReduxActionConstants.tsx b/app/client/src/constants/ReduxActionConstants.tsx index 14c88dd8e25a..292622ffde60 100644 --- a/app/client/src/constants/ReduxActionConstants.tsx +++ b/app/client/src/constants/ReduxActionConstants.tsx @@ -549,6 +549,18 @@ export const ReduxActionTypes = { SET_PAGE_ORDER_SUCCESS: "SET_PAGE_ORDER_SUCCESS", GROUP_WIDGETS_INIT: "GROUP_WIDGETS_INIT", REFACTOR_JS_ACTION_NAME: "REFACTOR_JS_ACTION_NAME", + TOGGLE_ONBOARDING_WIDGET_SELECTION: "TOGGLE_ONBOARDING_WIDGET_SELECTION", + SET_ENABLE_FIRST_TIME_USER_ONBOARDING: + "SET_ENABLE_FIRST_TIME_USER_ONBOARDING", + SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID: + "SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID", + SET_FIRST_TIME_USER_ONBOARDING_COMPLETE: + "SET_FIRST_TIME_USER_ONBOARDING_COMPLETE", + SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL: + "SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL", + SET_FORCE_WIDGET_PANEL_OPEN: "SET_FORCE_WIDGET_PANEL_OPEN", + END_FIRST_TIME_USER_ONBOARDING: "END_FIRST_TIME_USER_ONBOARDING", + UNDO_END_FIRST_TIME_USER_ONBOARDING: "UNDO_END_FIRST_TIME_USER_ONBOARDING", }; export type ReduxActionType = typeof ReduxActionTypes[keyof typeof ReduxActionTypes]; @@ -793,6 +805,7 @@ export type ApplicationPayload = { appIsExample: boolean; forkingEnabled?: boolean; appLayout?: AppLayoutConfig; + lastDeployedAt?: string; }; export type OrganizationDetails = { diff --git a/app/client/src/constants/ThirdPartyConstants.tsx b/app/client/src/constants/ThirdPartyConstants.tsx index 3edf4054a4a8..a6b73a89d296 100644 --- a/app/client/src/constants/ThirdPartyConstants.tsx +++ b/app/client/src/constants/ThirdPartyConstants.tsx @@ -3,3 +3,4 @@ export const S3_BUCKET_URL = "https://s3.us-east-2.amazonaws.com/assets.appsmith.com"; export const TELEMETRY_URL = "https://docs.appsmith.com/telemetry"; export const DISCORD_URL = "https://discord.gg/rBTTVJp"; +export const ASSETS_CDN_URL = "https://assets.appsmith.com"; diff --git a/app/client/src/constants/messages.ts b/app/client/src/constants/messages.ts index cab0557223e5..bdc00ce3a302 100644 --- a/app/client/src/constants/messages.ts +++ b/app/client/src/constants/messages.ts @@ -524,3 +524,103 @@ export const SNIPING_SELECT_WIDGET_AGAIN = () => export const SNIPING_NOT_SUPPORTED = () => "Binding on selection is not supported for this type of widget!"; + +//First Time User Onboarding +//Checklist page +export enum ONBOARDING_CHECKLIST_ACTIONS { + CONNECT_A_DATASOURCE = "CONNECT DATA SOURCE", + CREATE_A_QUERY = "CREATE A QUERY", + ADD_WIDGETS = "ADD WIDGETS", + CONNECT_DATA_TO_WIDGET = "CONNECT DATA TO WIDGET", + DEPLOY_APPLICATIONS = "DEPLOY APPLICATION", +} + +export const ONBOARDING_CHECKLIST_BANNER_HEADER = () => + "Amazing work! You’ve explored the basics of Appsmith"; +export const ONBOARDING_CHECKLIST_BANNER_BODY = () => + "You can carry on here, or explore the homepage to see how your projects are stored."; +export const ONBOARDING_CHECKLIST_BANNER_BUTTON = () => "Explore homepage"; + +export const ONBOARDING_CHECKLIST_HEADER = () => "👋 Welcome to Appsmith!"; +export const ONBOARDING_CHECKLIST_BODY = () => + "Let’s get you started on your first application, explore Appsmith yourself or follow our guide below to discover what Appsmith can do."; +export const ONBOARDING_CHECKLIST_COMPLETE_TEXT = () => "complete"; + +export const ONBOARDING_CHECKLIST_CONNECT_DATA_SOURCE = { + bold: () => "Connect your data source", + normal: () => "to start building an application.", +}; + +export const ONBOARDING_CHECKLIST_CREATE_A_QUERY = { + bold: () => "Create a query", + normal: () => "of your data source.", +}; + +export const ONBOARDING_CHECKLIST_ADD_WIDGETS = { + bold: () => "Start visualising your application", + normal: () => "using widgets.", +}; + +export const ONBOARDING_CHECKLIST_CONNECT_DATA_TO_WIDGET = { + bold: () => "Connect your data to the widgets", + normal: () => "using JavaScript.", +}; + +export const ONBOARDING_CHECKLIST_DEPLOY_APPLICATIONS = { + bold: () => "Deploy your application", + normal: () => ", and see your creation live.", +}; + +export const ONBOARDING_CHECKLIST_FOOTER = () => + "Not sure where to start? Take the welcome tour"; + +//Introduction modal +export const HOW_APPSMITH_WORKS = () => "Here’s how Appsmith works"; +export const ONBOARDING_INTRO_CONNECT_YOUR_DATABASE = () => + "Connect your database or API"; +export const ONBOARDING_INTRO_CONNECT_DATA_WIDGET = () => + "Connect queried data to pre-built widgets and customise with Javascript."; +export const ONBOARDING_INTRO_PUBLISH = () => + "Instantly publish and share your apps"; +export const BUILD_MY_FIRST_APP = () => "Build my first app"; +export const ONBOARDING_INTRO_FOOTER = () => + "Want more help getting started, let’s"; +export const BUILD_APP_TOGETHER = () => "build an app together."; + +//Statusbar +export const ONBOARDING_STATUS_STEPS_FIRST = () => "First: Create a Datasource"; +export const ONBOARDING_STATUS_STEPS_FIRST_ALT = () => + "Next: Create a Datasource"; +export const ONBOARDING_STATUS_STEPS_SECOND = () => "Next: Create a Query"; +export const ONBOARDING_STATUS_STEPS_THIRD = () => "Next: Add a Widget"; +export const ONBOARDING_STATUS_STEPS_FOURTH = () => + "Next: Connect data to Widget"; +export const ONBOARDING_STATUS_STEPS_FIVETH = () => + "Next: Deploy your application"; +export const ONBOARDING_STATUS_STEPS_SIXTH = () => "Completed 🎉"; +export const ONBOARDING_STATUS_GET_STARTED = () => "GET STARTED"; + +//Tasks +//1. datasource +export const ONBOARDING_TASK_DATASOURCE_HEADER = () => + "Start by adding your first Data source"; +export const ONBOARDING_TASK_DATASOURCE_BODY = () => + "Adding a data source makes creating applications more powerful. Don’t worry if you don’t have any data to hand, we have sample data you can use."; +export const ONBOARDING_TASK_DATASOURCE_BUTTON = () => "+ Add a data source"; +export const ONBOARDING_TASK_DATASOURCE_FOOTER_ACTION = () => "add a widget"; +export const ONBOARDING_TASK_DATASOURCE_FOOTER = () => "first."; +//2. query +export const ONBOARDING_TASK_QUERY_HEADER = () => "Next, create a query"; +export const ONBOARDING_TASK_QUERY_BODY = () => + "Great job adding a data source! The next thing you can do is create a query on your data."; +export const ONBOARDING_TASK_QUERY_BUTTON = () => "+ create a query"; +export const ONBOARDING_TASK_QUERY_FOOTER_ACTION = () => "add a widget"; +//2. widget +export const ONBOARDING_TASK_WIDGET_HEADER = () => + "Next, add a widget to start displaying data"; +export const ONBOARDING_TASK_WIDGET_BODY = () => + "Great job adding a data source! The next thing you can do is add widget to start start making your data visual."; +export const ONBOARDING_TASK_WIDGET_BUTTON = () => "+ Add a Widget"; +export const ONBOARDING_TASK_WIDGET_FOOTER_ACTION = () => + "deploy your application"; +export const ONBOARDING_TASK_FOOTER = () => "Alternatively you can also"; diff --git a/app/client/src/constants/routes.ts b/app/client/src/constants/routes.ts index 2b68c182db51..0233df05830c 100644 --- a/app/client/src/constants/routes.ts +++ b/app/client/src/constants/routes.ts @@ -12,6 +12,7 @@ export const USERS_URL = "/users"; export const VIEWER_URL_REGEX = /applications\/.*?\/pages\/.*/; export const UNSUBSCRIBE_EMAIL_URL = "/unsubscribe/discussion/:threadId"; export const SETUP = "/setup/welcome"; +export const BUILDER_CHECKLIST_URL = `${BUILDER_URL}/checklist`; export type BuilderRouteParams = { applicationId: string; @@ -243,6 +244,11 @@ export const getGenerateTemplateFormURL = ( pageId, )}${GEN_TEMPLATE_URL}${GEN_TEMPLATE_FORM_ROUTE}`; +export const getOnboardingCheckListUrl = ( + applicationId = ":applicationId", + pageId = ":pageId", +): string => `${BUILDER_PAGE_URL(applicationId, pageId)}/checklist`; + export const FORGOT_PASSWORD_URL = `${USER_AUTH_URL}/forgotPassword`; export const RESET_PASSWORD_URL = `${USER_AUTH_URL}/resetPassword`; export const BASE_SIGNUP_URL = `/signup`; @@ -261,3 +267,16 @@ export const matchBuilderPath = match(BUILDER_URL); export const matchJSObjectPath = match(JS_COLLECTION_ID_URL()); export const matchViewerPath = match(getApplicationViewerPageURL()); + +export const BUILDER_URL_REGEX = /\/applications\/(.[^\/]*)\/pages\/(.[^\/]*)\//; +export const extractAppIdAndPageIdFromUrl = (url = "") => { + const matched = url.match(BUILDER_URL_REGEX); + if (matched) { + return { + applicationId: matched[1], + pageId: matched[2], + }; + } + + return {}; +}; diff --git a/app/client/src/pages/Applications/index.tsx b/app/client/src/pages/Applications/index.tsx index d623ea174be8..8d10a8c0cc8a 100644 --- a/app/client/src/pages/Applications/index.tsx +++ b/app/client/src/pages/Applications/index.tsx @@ -80,7 +80,10 @@ import AnalyticsUtil from "utils/AnalyticsUtil"; import { createOrganizationSubmitHandler } from "../organization/helpers"; import UserApi from "api/UserApi"; import ImportApplicationModal from "./ImportApplicationModal"; -import { SIGNUP_SUCCESS_URL } from "constants/routes"; +import { + extractAppIdAndPageIdFromUrl, + SIGNUP_SUCCESS_URL, +} from "constants/routes"; import { getIsSafeRedirectURL } from "utils/helpers"; @@ -879,7 +882,6 @@ function ApplicationsSection(props: any) { } type ApplicationProps = { applicationList: ApplicationPayload[]; - createApplication: (appName: string) => void; searchApplications: (keyword: string) => void; isCreatingApplication: creatingApplicationMap; isFetchingApplications: boolean; @@ -891,6 +893,7 @@ type ApplicationProps = { userOrgs: any; currentUser?: User; searchKeyword: string | undefined; + enableFirstTimeUserOnboarding: (applicationId: string) => void; }; const getIsFromSignup = () => { @@ -923,9 +926,30 @@ class Applications extends Component< redirectUsingQueryParam = () => { const urlObject = new URL(window.location.href); const redirectUrl = urlObject?.searchParams.get("redirectUrl"); + const shouldEnableFirstTimeUserOnboarding = urlObject?.searchParams.get( + "enableFirstTimeUserExperience", + ); if (redirectUrl) { try { - if (getIsSafeRedirectURL(redirectUrl)) { + if ( + window.location.pathname == SIGNUP_SUCCESS_URL && + shouldEnableFirstTimeUserOnboarding === "true" + ) { + const { applicationId, pageId } = extractAppIdAndPageIdFromUrl( + redirectUrl, + ); + if (applicationId && pageId) { + this.props.enableFirstTimeUserOnboarding(applicationId); + /* + * window.location.replace resets the application, adding + * this timeout to store onboarding variables in indexdb + */ + + setTimeout(() => { + window.location.replace(redirectUrl); + }); + } + } else if (getIsSafeRedirectURL(redirectUrl)) { window.location.replace(redirectUrl); } } catch (e) { @@ -965,15 +989,8 @@ const mapStateToProps = (state: AppState) => ({ }); const mapDispatchToProps = (dispatch: any) => ({ - getAllApplication: () => - dispatch({ type: ReduxActionTypes.GET_ALL_APPLICATION_INIT }), - createApplication: (appName: string) => { - dispatch({ - type: ReduxActionTypes.CREATE_APPLICATION_INIT, - payload: { - name: appName, - }, - }); + getAllApplication: () => { + dispatch({ type: ReduxActionTypes.GET_ALL_APPLICATION_INIT }); }, searchApplications: (keyword: string) => { dispatch({ @@ -983,6 +1000,20 @@ const mapDispatchToProps = (dispatch: any) => ({ }, }); }, + enableFirstTimeUserOnboarding: (applicationId: string) => { + dispatch({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: true, + }); + dispatch({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: applicationId, + }); + dispatch({ + type: ReduxActionTypes.SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL, + payload: true, + }); + }, }); export default connect(mapStateToProps, mapDispatchToProps)(Applications); diff --git a/app/client/src/pages/Editor/Explorer/index.tsx b/app/client/src/pages/Editor/Explorer/index.tsx index b80797f1532a..694f06a800cf 100644 --- a/app/client/src/pages/Editor/Explorer/index.tsx +++ b/app/client/src/pages/Editor/Explorer/index.tsx @@ -1,13 +1,31 @@ import { IPanelProps } from "@blueprintjs/core"; +import { forceOpenWidgetPanel } from "actions/widgetSidebarActions"; import React from "react"; -import { useSelector } from "react-redux"; +import { useEffect } from "react"; +import { useDispatch, useSelector } from "react-redux"; +import { AppState } from "reducers"; import { inOnboarding, isAddWidgetComplete } from "sagas/OnboardingSagas"; +import WidgetSidebar from "../WidgetSidebar"; import EntityExplorer from "./EntityExplorer"; import OnboardingExplorer from "./Onboarding"; function ExplorerContent(props: IPanelProps) { const isInOnboarding = useSelector(inOnboarding); const addWidgetComplete = useSelector(isAddWidgetComplete); + const isForceOpenWidgetPanel = useSelector( + (state: AppState) => state.ui.onBoarding.forceOpenWidgetPanel, + ); + const dispatch = useDispatch(); + useEffect(() => { + if (isForceOpenWidgetPanel) { + props.openPanel({ component: WidgetSidebar }); + } + return () => { + if (isForceOpenWidgetPanel) { + dispatch(forceOpenWidgetPanel(false)); + } + }; + }, [isForceOpenWidgetPanel]); if (isInOnboarding && !addWidgetComplete) { return ; diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.test.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.test.tsx new file mode 100644 index 000000000000..15b31b031dc7 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.test.tsx @@ -0,0 +1,170 @@ +import { bindDataOnCanvas } from "actions/pluginActionActions"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { + BUILDER_PAGE_URL, + INTEGRATION_EDITOR_URL, + INTEGRATION_TABS, +} from "constants/routes"; +import React from "react"; +import { Provider } from "react-redux"; +import { fireEvent, render, screen } from "test/testUtils"; +import OnboardingChecklist from "./Checklist"; +import { getStore, initialState } from "./testUtils"; + +let container: any = null; + +let useIsWidgetActionConnectionPresent = false; +jest.mock("pages/Editor/utils", () => ({ + useIsWidgetActionConnectionPresent: () => useIsWidgetActionConnectionPresent, +})); + +const dispatch = jest.fn(); +jest.mock("react-redux", () => { + const originalModule = jest.requireActual("react-redux"); + return { + ...originalModule, + useDispatch: () => dispatch, + }; +}); + +let history: any; +jest.mock("utils/history", () => { + history = jest.fn(); + return { + push: history, + }; +}); + +function renderComponent(store: any) { + render( + + + , + container, + ); +} + +describe("Checklist", () => { + beforeEach(() => { + container = document.createElement("div"); + document.body.appendChild(container); + }); + + afterEach(() => { + jest.clearAllMocks(); + }); + + it("is rendered", () => { + renderComponent(getStore(0)); + const wrapper = screen.getAllByTestId("checklist-wrapper"); + expect(wrapper.length).toBe(1); + const completionInfo = screen.getAllByTestId("checklist-completion-info"); + expect(completionInfo[0].innerHTML).toBe("0 of 5"); + const datasourceButton = screen.getAllByTestId( + "checklist-datasource-button", + ); + expect(datasourceButton.length).toBe(1); + const actionButton = screen.getAllByTestId("checklist-action-button"); + expect(actionButton.length).toBe(1); + const widgetButton = screen.getAllByTestId("checklist-widget-button"); + expect(widgetButton.length).toBe(1); + const connectionButton = screen.getAllByTestId( + "checklist-connection-button", + ); + expect(connectionButton.length).toBe(1); + const deployButton = screen.getAllByTestId("checklist-deploy-button"); + expect(deployButton.length).toBe(1); + const banner = screen.queryAllByTestId("checklist-completion-banner"); + expect(banner.length).toBe(0); + fireEvent.click(datasourceButton[0]); + expect(history).toHaveBeenCalledWith( + INTEGRATION_EDITOR_URL( + initialState.entities.pageList.applicationId, + initialState.entities.pageList.currentPageId, + INTEGRATION_TABS.NEW, + ), + ); + }); + + it("with `add a datasource` task checked off", () => { + renderComponent(getStore(1)); + const datasourceButton = screen.queryAllByTestId( + "checklist-datasource-button", + ); + expect(datasourceButton.length).toBe(0); + const actionButton = screen.queryAllByTestId("checklist-action-button"); + fireEvent.click(actionButton[0]); + expect(history).toHaveBeenCalledWith( + INTEGRATION_EDITOR_URL( + initialState.entities.pageList.applicationId, + initialState.entities.pageList.currentPageId, + INTEGRATION_TABS.ACTIVE, + ), + ); + }); + + it("with `add a query` task checked off", () => { + renderComponent(getStore(2)); + const actionButton = screen.queryAllByTestId("checklist-action-button"); + expect(actionButton.length).toBe(0); + const widgetButton = screen.queryAllByTestId("checklist-widget-button"); + fireEvent.click(widgetButton[0]); + expect(history).toHaveBeenCalledWith( + BUILDER_PAGE_URL( + initialState.entities.pageList.applicationId, + initialState.entities.pageList.currentPageId, + ), + ); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION, + payload: true, + }); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN, + payload: true, + }); + }); + + it("with `add a widget` task checked off", () => { + const store: any = getStore(3); + renderComponent(store); + const widgetButton = screen.queryAllByTestId("checklist-widget-button"); + expect(widgetButton.length).toBe(0); + const connectionButton = screen.queryAllByTestId( + "checklist-connection-button", + ); + fireEvent.click(connectionButton[0]); + expect(dispatch).toHaveBeenCalledWith( + bindDataOnCanvas({ + queryId: store.getState().entities.actions[0].config.id, + applicationId: store.getState().entities.pageList.applicationId, + pageId: store.getState().entities.pageList.currentPageId, + }), + ); + }); + + it("with `connect your data` task checked off", () => { + useIsWidgetActionConnectionPresent = true; + renderComponent(getStore(4)); + const connectionButton = screen.queryAllByTestId( + "checklist-connection-button", + ); + expect(connectionButton.length).toBe(0); + const deployButton = screen.queryAllByTestId("checklist-deploy-button"); + fireEvent.click(deployButton[0]); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.PUBLISH_APPLICATION_INIT, + payload: { + applicationId: initialState.entities.pageList.applicationId, + }, + }); + }); + + it("with `Deploy your application` task checked off", () => { + renderComponent(getStore(5)); + const deployButton = screen.queryAllByTestId("checklist-deploy-button"); + expect(deployButton.length).toBe(0); + const banner = screen.queryAllByTestId("checklist-completion-banner"); + expect(banner.length).toBe(1); + }); +}); diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.tsx new file mode 100644 index 000000000000..7d66e043f9ff --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.tsx @@ -0,0 +1,556 @@ +import Button, { Category } from "components/ads/Button"; +import Text, { TextType } from "components/ads/Text"; +import { Icon } from "@blueprintjs/core"; +import React from "react"; +import styled from "styled-components"; +import { useDispatch } from "react-redux"; +import { useSelector } from "store"; +import { + getCanvasWidgets, + getDatasources, + getPageActions, +} from "selectors/entitiesSelector"; +import { getCurrentThemeDetails } from "selectors/themeSelectors"; +import { useIsWidgetActionConnectionPresent } from "pages/Editor/utils"; +import { getEvaluationInverseDependencyMap } from "selectors/dataTreeSelectors"; +import { + APPLICATIONS_URL, + BUILDER_PAGE_URL, + INTEGRATION_EDITOR_URL, + INTEGRATION_TABS, +} from "constants/routes"; +import { + getApplicationLastDeployedAt, + getCurrentApplicationId, + getCurrentPageId, +} from "selectors/editorSelectors"; +import history from "utils/history"; +import { toggleInOnboardingWidgetSelection } from "actions/onboardingActions"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { + getFirstTimeUserOnboardingComplete, + getEnableFirstTimeUserOnboarding, +} from "selectors/onboardingSelectors"; +import AnalyticsUtil from "utils/AnalyticsUtil"; +import { Colors } from "constants/Colors"; +import { forceOpenWidgetPanel } from "actions/widgetSidebarActions"; +import { bindDataOnCanvas } from "actions/pluginActionActions"; +import { Redirect } from "react-router"; +import { + ONBOARDING_CHECKLIST_ACTIONS, + ONBOARDING_CHECKLIST_BANNER_BODY, + ONBOARDING_CHECKLIST_BANNER_HEADER, + ONBOARDING_CHECKLIST_HEADER, + ONBOARDING_CHECKLIST_BODY, + ONBOARDING_CHECKLIST_COMPLETE_TEXT, + ONBOARDING_CHECKLIST_CONNECT_DATA_SOURCE, + ONBOARDING_CHECKLIST_CREATE_A_QUERY, + ONBOARDING_CHECKLIST_ADD_WIDGETS, + ONBOARDING_CHECKLIST_CONNECT_DATA_TO_WIDGET, + ONBOARDING_CHECKLIST_DEPLOY_APPLICATIONS, + ONBOARDING_CHECKLIST_FOOTER, + ONBOARDING_CHECKLIST_BANNER_BUTTON, + createMessage, +} from "constants/messages"; +import { Datasource } from "entities/Datasource"; +import { ActionDataState } from "reducers/entityReducers/actionsReducer"; +import { CanvasWidgetsReduxState } from "reducers/entityReducers/canvasWidgetsReducer"; +import { triggerWelcomeTour } from "./Utils"; + +const Wrapper = styled.div` + padding: ${(props) => props.theme.spaces[7]}px 55px; + background: #fff; + height: calc(100vh - ${(props) => props.theme.smallHeaderHeight}); + overflow: auto; +`; + +const Pageheader = styled.h4` + font-size: ${(props) => props.theme.fontSizes[6]}px; +`; + +const PageSubHeader = styled.p` + width: 100%; + margin-bottom: ${(props) => props.theme.spaces[12]}px; +`; + +const StatusWrapper = styled.p` + width: 100%; + margin-bottom: ${(props) => props.theme.spaces[12]}px; + & span { + font-weight: 700; + } +`; + +const LIST_WIDTH_OFFSET = 160; + +const StyledList = styled.ul` + margin: 0; + padding: 0; + list-style-type: none; + width: calc(100% - ${LIST_WIDTH_OFFSET}px); + overflow: auto; +`; + +const StyledListItem = styled.li` + width: 100%; + display: flex; + padding: ${(props) => props.theme.spaces[12]}px 0px; + align-items: center; + border-bottom: 1px solid ${(props) => props.theme.colors.grid}; + &:first-child { + border-top: 1px solid ${(props) => props.theme.colors.grid}; + } +`; + +const CHECKLIST_WIDTH_OFFSET = 268; + +const ChecklistText = styled.div<{ active: boolean }>` + flex-basis: calc(100% - ${CHECKLIST_WIDTH_OFFSET}px); + color: ${(props) => (props.active ? props.theme.colors.text.normal : "")}; + & span { + font-weight: 700; + } +`; + +const CompeleteMarkerIcon = styled.div<{ success: boolean }>` + width: 25px; + height: 25px; + border-radius: 30px; + border: 2px solid; + border-color: ${(props) => + props.success ? props.theme.colors.success.main : Colors.SILVER_CHALICE}; + padding: 2px 2px; +`; + +const StyledCompleteMarker = styled.div` + flex-basis: 40px; +`; + +const StyledButton = styled(Button)` + width: 218px; + height: 30px; +`; + +const Backbutton = styled.span` + color: ${Colors.DIESEL}; + cursor: pointer; +`; + +const Banner = styled.div` + width: calc(100% - 113px); + border: 1px solid ${(props) => props.theme.colors.table.border}; + padding: ${(props) => props.theme.spaces[7]}px; + margin-top: ${(props) => props.theme.spaces[7]}px; +`; + +const BannerHeader = styled.h5` + font-size: 20px; + margin: 0; +`; + +const BannerText = styled.p` + margin: ${(props) => props.theme.spaces[3]}px 0px + ${(props) => props.theme.spaces[7]}px; +`; + +const StyledImg = styled.img` + width: 20px; + transform: translate(0px, 5px); + margin-right: 5px; +`; + +const StyledFooter = styled.div` + cursor: pointer; + display: inline-block; + margin-top: ${(props) => props.theme.spaces[9]}px; +`; + +function getSuggestedNextActionAndCompletedTasks( + datasources: Datasource[], + actions: ActionDataState, + widgets: CanvasWidgetsReduxState, + isConnectionPresent: boolean, + isDeployed: boolean, +) { + let suggestedNextAction; + if (!datasources.length) { + suggestedNextAction = createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CONNECT_A_DATASOURCE, + ); + } else if (!actions.length) { + suggestedNextAction = createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CREATE_A_QUERY, + ); + } else if (Object.keys(widgets).length === 1) { + suggestedNextAction = createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.ADD_WIDGETS, + ); + } else if (!isConnectionPresent) { + suggestedNextAction = createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CONNECT_DATA_TO_WIDGET, + ); + } else if (!isDeployed) { + suggestedNextAction = createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.DEPLOY_APPLICATIONS, + ); + } + let completedTasks = 0; + + if (datasources.length) { + completedTasks++; + } + if (actions.length) { + completedTasks++; + } + if (Object.keys(widgets).length > 1) { + completedTasks++; + } + if (isConnectionPresent) { + completedTasks++; + } + if (isDeployed) { + completedTasks++; + } + + return { suggestedNextAction, completedTasks }; +} + +export default function OnboardingChecklist() { + const dispatch = useDispatch(); + const datasources = useSelector(getDatasources); + const pageId = useSelector(getCurrentPageId); + const actions = useSelector(getPageActions(pageId)); + const widgets = useSelector(getCanvasWidgets); + const deps = useSelector(getEvaluationInverseDependencyMap); + const isConnectionPresent = useIsWidgetActionConnectionPresent( + widgets, + actions, + deps, + ); + const theme = useSelector(getCurrentThemeDetails); + const applicationId = useSelector(getCurrentApplicationId); + const isDeployed = !!useSelector(getApplicationLastDeployedAt); + const isCompleted = useSelector(getFirstTimeUserOnboardingComplete); + const isFirstTimeUserOnboardingEnabled = useSelector( + getEnableFirstTimeUserOnboarding, + ); + if (!isFirstTimeUserOnboardingEnabled && !isCompleted) { + return ; + } + const { + completedTasks, + suggestedNextAction, + } = getSuggestedNextActionAndCompletedTasks( + datasources, + actions, + widgets, + isConnectionPresent, + isDeployed, + ); + const onconnectYourWidget = () => { + const action = actions[0]; + if (action && applicationId && pageId) { + dispatch( + bindDataOnCanvas({ + queryId: action.config.id, + applicationId, + pageId, + }), + ); + } else { + history.push(BUILDER_PAGE_URL(applicationId, pageId)); + } + AnalyticsUtil.logEvent("SIGNPOSTING_CONNECT_WIDGET_CLICK"); + }; + return ( + + history.push(BUILDER_PAGE_URL(applicationId, pageId))} + > + + + Back + + + {isCompleted && ( + + + {createMessage(ONBOARDING_CHECKLIST_BANNER_HEADER)} + + + {createMessage(ONBOARDING_CHECKLIST_BANNER_BODY)} + + history.push(APPLICATIONS_URL)} + text={createMessage(ONBOARDING_CHECKLIST_BANNER_BUTTON)} + type="button" + /> + + )} + {createMessage(ONBOARDING_CHECKLIST_HEADER)} + {createMessage(ONBOARDING_CHECKLIST_BODY)} + + + {completedTasks} of 5 + +  {createMessage(ONBOARDING_CHECKLIST_COMPLETE_TEXT)} + + + + + + + + + + + {createMessage(ONBOARDING_CHECKLIST_CONNECT_DATA_SOURCE.bold)} + +   + {createMessage(ONBOARDING_CHECKLIST_CONNECT_DATA_SOURCE.normal)} + + {!datasources.length && !actions.length && ( + ONBOARDING_CHECKLIST_ACTIONS.CONNECT_A_DATASOURCE, + ) + ? Category.primary + : Category.tertiary + } + data-testid="checklist-datasource-button" + onClick={() => { + AnalyticsUtil.logEvent("SIGNPOSTING_CREATE_DATASOURCE_CLICK", { + from: "CHECKLIST", + }); + history.push( + INTEGRATION_EDITOR_URL( + applicationId, + pageId, + INTEGRATION_TABS.NEW, + ), + ); + }} + text={createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CONNECT_A_DATASOURCE, + )} + type="button" + /> + )} + + + + + + + + + + {createMessage(ONBOARDING_CHECKLIST_CREATE_A_QUERY.bold)} + +  {createMessage(ONBOARDING_CHECKLIST_CREATE_A_QUERY.normal)} + + {!actions.length && ( + ONBOARDING_CHECKLIST_ACTIONS.CREATE_A_QUERY) + ? Category.primary + : Category.tertiary + } + data-testid="checklist-action-button" + disabled={!datasources.length} + onClick={() => { + AnalyticsUtil.logEvent("SIGNPOSTING_CREATE_QUERY_CLICK", { + from: "CHECKLIST", + }); + history.push( + INTEGRATION_EDITOR_URL( + applicationId, + pageId, + INTEGRATION_TABS.ACTIVE, + ), + ); + }} + tag="button" + text={createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CREATE_A_QUERY, + )} + type="button" + /> + )} + + + + 1}> + 1 + ? theme.colors.success.main + : Colors.SILVER_CHALICE + } + data-testid="checklist-widget-complete-icon" + icon={ + Object.keys(widgets).length > 1 ? "tick-circle" : "small-tick" + } + iconSize={17} + /> + + + 1}> + {createMessage(ONBOARDING_CHECKLIST_ADD_WIDGETS.bold)} +  {createMessage(ONBOARDING_CHECKLIST_ADD_WIDGETS.normal)} + + {Object.keys(widgets).length === 1 && ( + ONBOARDING_CHECKLIST_ACTIONS.ADD_WIDGETS) + ? Category.primary + : Category.tertiary + } + data-testid="checklist-widget-button" + onClick={() => { + AnalyticsUtil.logEvent("SIGNPOSTING_ADD_WIDGET_CLICK", { + from: "CHECKLIST", + }); + dispatch(toggleInOnboardingWidgetSelection(true)); + dispatch(forceOpenWidgetPanel(true)); + history.push(BUILDER_PAGE_URL(applicationId, pageId)); + }} + text={createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.ADD_WIDGETS, + )} + type="button" + /> + )} + + + + + + + + + + {createMessage(ONBOARDING_CHECKLIST_CONNECT_DATA_TO_WIDGET.bold)} + +   + {createMessage(ONBOARDING_CHECKLIST_CONNECT_DATA_TO_WIDGET.normal)} + + {!isConnectionPresent && ( + ONBOARDING_CHECKLIST_ACTIONS.CONNECT_DATA_TO_WIDGET, + ) + ? Category.primary + : Category.tertiary + } + data-testid="checklist-connection-button" + disabled={Object.keys(widgets).length === 1 || !actions.length} + onClick={onconnectYourWidget} + tag="button" + text={createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.CONNECT_DATA_TO_WIDGET, + )} + type="button" + /> + )} + + + + + + + + + + {createMessage(ONBOARDING_CHECKLIST_DEPLOY_APPLICATIONS.bold)} + +   + {createMessage(ONBOARDING_CHECKLIST_DEPLOY_APPLICATIONS.normal)} + + {!isDeployed && ( + ONBOARDING_CHECKLIST_ACTIONS.DEPLOY_APPLICATIONS, + ) + ? Category.primary + : Category.tertiary + } + data-testid="checklist-deploy-button" + onClick={() => { + AnalyticsUtil.logEvent("SIGNPOSTING_PUBLISH_CLICK", { + from: "CHECKLIST", + }); + dispatch({ + type: ReduxActionTypes.PUBLISH_APPLICATION_INIT, + payload: { + applicationId, + }, + }); + }} + text={createMessage( + () => ONBOARDING_CHECKLIST_ACTIONS.DEPLOY_APPLICATIONS, + )} + type="button" + /> + )} + + + triggerWelcomeTour(dispatch)}> + + + {createMessage(ONBOARDING_CHECKLIST_FOOTER)} + + + + + ); +} diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/IntroductionModal.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/IntroductionModal.tsx new file mode 100644 index 000000000000..85107cef6a80 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/IntroductionModal.tsx @@ -0,0 +1,208 @@ +import { Icon, Overlay } from "@blueprintjs/core"; +import Button, { Category } from "components/ads/Button"; +import { + ONBOARDING_INTRO_CONNECT_DATA_WIDGET, + ONBOARDING_INTRO_CONNECT_YOUR_DATABASE, + HOW_APPSMITH_WORKS, + ONBOARDING_INTRO_PUBLISH, + BUILD_MY_FIRST_APP, + ONBOARDING_INTRO_FOOTER, + BUILD_APP_TOGETHER, + createMessage, +} from "constants/messages"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { ASSETS_CDN_URL } from "constants/ThirdPartyConstants"; +import React from "react"; +import { useEffect } from "react"; +import { useDispatch } from "react-redux"; +import styled from "styled-components"; +import AnalyticsUtil from "utils/AnalyticsUtil"; +import { triggerWelcomeTour } from "./Utils"; + +const Wrapper = styled.div` + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; +`; +const CenteredContainer = styled.div` + width: 783px; + height: 420px; + background: #fff; + padding: 16px 24px; + position: relative; +`; + +const ModalHeader = styled.h5` + font-size: 20px; + margin: 16px 0 6px; + text-align: center; +`; + +const ModalBody = styled.div` + text-align: center; +`; + +const ModalImgWrapper = styled.div` + display: flex; + justify-content: center; +`; + +const ModalContentWrapper = styled.div` + display: flex; + & div:nth-child(1) { + flex-basis: 165px; + } + & div:nth-child(2) { + flex-basis: 265px; + margin-left: 73px; + } + & div:nth-child(3) { + flex-basis: 135px; + margin-left: 72px; + } +`; + +const StyledImgWrapper = styled.div` + text-align: center; + &:nth-child(1) { + width: 25%; + position: relative; + right: -2px; + } + &:nth-child(2) { + padding-top: 28px; + width: 50%; + } + &:nth-child(3) { + padding-top: 22px; + width: 25%; + position: relative; + left: -24px; + } +`; + +const StyledImg = styled.img` + width: ${(props) => props.width}px; + vertical-align: middle; +`; + +const StyledCount = styled.h5` + font-size: 20px; + margin: 0 0 5px; + font-weight: 500; +`; + +const ModalContent = styled.p``; + +const ModalFooter = styled.div` + text-align: center; +`; + +const StyledButton = styled(Button)` + width: 145px; + height: 38px; + display: inline-block; + margin: 33px 0px 30px; +`; + +const ModalFooterNote = styled.p` + & span { + cursor: pointer; + color: ${(props) => props.theme.colors.welcomeTourStickySidebarBackground}; + } +`; + +const StyledClose = styled(Icon)` + position: absolute; + top: 20px; + right: 20px; + cursor: pointer; +`; + +type IntroductionModalProps = { + close: () => void; +}; + +const getConnectDataImg = () => `${ASSETS_CDN_URL}/ConnectData.svg`; +const getArrowImg = () => `${ASSETS_CDN_URL}/Arrow.svg`; +const getQueryDataImg = () => `${ASSETS_CDN_URL}/QueryData.svg`; +const getPublishAppsImg = () => `${ASSETS_CDN_URL}/PublishApps.svg`; + +export default function IntroductionModal({ close }: IntroductionModalProps) { + const dispatch = useDispatch(); + const onBuildApp = () => { + AnalyticsUtil.logEvent("SIGNPOSTING_BUILD_APP_CLICK"); + close(); + }; + useEffect(() => { + dispatch({ + type: ReduxActionTypes.GET_ALL_APPLICATION_INIT, + }); + }, []); + return ( + + + + + {createMessage(HOW_APPSMITH_WORKS)} + + + + + + + + + + + + + + + +
+ 1. + + {createMessage(ONBOARDING_INTRO_CONNECT_YOUR_DATABASE)} + +
+
+ 2. + + {createMessage(ONBOARDING_INTRO_CONNECT_DATA_WIDGET)} + +
+
+ 3. + + {createMessage(ONBOARDING_INTRO_PUBLISH)} + +
+
+
+ + + + {createMessage(ONBOARDING_INTRO_FOOTER)}  + triggerWelcomeTour(dispatch)}> + {createMessage(BUILD_APP_TOGETHER)} + + + +
+
+
+ ); +} diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.test.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.test.tsx new file mode 100644 index 000000000000..10c57a07b27f --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.test.tsx @@ -0,0 +1,87 @@ +import React from "react"; +import { Provider } from "react-redux"; +import { render, screen } from "test/testUtils"; +import OnboardingStatusbar from "./Statusbar"; +import { getStore } from "./testUtils"; +import { + ONBOARDING_STATUS_STEPS_FIRST, + ONBOARDING_STATUS_STEPS_SECOND, + ONBOARDING_STATUS_STEPS_THIRD, + ONBOARDING_STATUS_STEPS_FOURTH, + ONBOARDING_STATUS_STEPS_FIVETH, + ONBOARDING_STATUS_STEPS_SIXTH, +} from "constants/messages"; + +let useIsWidgetActionConnectionPresent = false; +jest.mock("pages/Editor/utils", () => ({ + useIsWidgetActionConnectionPresent: () => useIsWidgetActionConnectionPresent, +})); + +let container: any = null; + +function renderComponent(store: any) { + render( + + + , + container, + ); +} + +describe("Statusbar", () => { + beforeEach(() => { + container = document.createElement("div"); + document.body.appendChild(container); + }); + + it("is rendered", async (done) => { + renderComponent(getStore(0)); + const statusbar = screen.queryAllByTestId("statusbar-container"); + expect(statusbar).toHaveLength(1); + done(); + }); + + it("is pro", async (done) => { + renderComponent(getStore(0)); + const statusbar = screen.queryAllByTestId("statusbar-container"); + expect(statusbar).not.toBeNull(); + done(); + }); + + it("is showing first step", async () => { + renderComponent(getStore(0)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_FIRST()); + }); + + it("is showing second step", async () => { + renderComponent(getStore(1)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_SECOND()); + }); + + it("is showing third step", async () => { + renderComponent(getStore(2)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_THIRD()); + }); + + it("is showing fourth step", async () => { + renderComponent(getStore(3)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_FOURTH()); + }); + + it("is showing fifth step", async () => { + useIsWidgetActionConnectionPresent = true; + renderComponent(getStore(4)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_FIVETH()); + }); + + it("is showing fifth step", async () => { + renderComponent(getStore(5)); + const statusbarText = screen.queryAllByTestId("statusbar-text"); + expect(statusbarText[0].innerHTML).toBe(ONBOARDING_STATUS_STEPS_SIXTH()); + }); +}); diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.tsx new file mode 100644 index 000000000000..548b2ce09a88 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.tsx @@ -0,0 +1,247 @@ +import { Icon } from "@blueprintjs/core"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { getOnboardingCheckListUrl } from "constants/routes"; +import { useIsWidgetActionConnectionPresent } from "pages/Editor/utils"; +import React, { SyntheticEvent } from "react"; +import { useDispatch, useSelector } from "react-redux"; +import { RouteComponentProps, withRouter } from "react-router-dom"; +import { getEvaluationInverseDependencyMap } from "selectors/dataTreeSelectors"; +import { + getApplicationLastDeployedAt, + getCurrentApplicationId, + getCurrentPageId, +} from "selectors/editorSelectors"; +import { + getCanvasWidgets, + getDatasources, + getPageActions, +} from "selectors/entitiesSelector"; +import { getFirstTimeUserOnboardingComplete } from "selectors/onboardingSelectors"; +import styled from "styled-components"; +import history from "utils/history"; +import { + ONBOARDING_STATUS_STEPS_FIRST, + ONBOARDING_STATUS_STEPS_FIRST_ALT, + ONBOARDING_STATUS_STEPS_SECOND, + ONBOARDING_STATUS_STEPS_THIRD, + ONBOARDING_STATUS_STEPS_FOURTH, + ONBOARDING_STATUS_STEPS_FIVETH, + ONBOARDING_STATUS_STEPS_SIXTH, + ONBOARDING_STATUS_GET_STARTED, + createMessage, +} from "constants/messages"; +import { getTypographyByKey } from "constants/DefaultTheme"; +import { useIntiateOnboarding } from "components/editorComponents/Onboarding/utils"; + +const Wrapper = styled.div<{ active: boolean }>` + position: relative; + width: 100%; + background-color: ${(props) => + props.active ? props.theme.colors.welcomeTourStickySidebarBackground : ""}; + cursor: ${(props) => (props.active ? "default" : "pointer")}; + height: 83px; + padding: 10px 16px; + transition: background-color 0.3s ease; + + &:hover .hover-icons { + opacity: 1; + } +`; + +const TitleWrapper = styled.p` + color: #fff; + ${(props) => getTypographyByKey(props, "p4")} +`; + +const StatusText = styled.p` + color: #fff; + font-size: 13px; + & .hover-icons { + transform: translate(3px, 0px); + opacity: 0; + } +`; + +const ProgressContainer = styled.div` + background-color: rgb(255, 255, 255, 0.35); + border-radius: ${(props) => props.theme.radii[3]}px; + overflow: hidden; + margin-top: 12px; +`; + +const Progressbar = styled.div` + width: ${(props) => props.percentage}%; + height: 6px; + background: ${(props) => + props.active + ? "#fff" + : props.theme.colors.welcomeTourStickySidebarBackground}; + transition: width 0.3s ease, background 0.3s ease; + border-radius: ${(props) => props.theme.radii[3]}px; +`; + +const StyledClose = styled(Icon)` + position: absolute; + top: 15px; + right: 13px; + opacity: 0; +`; + +type StatusProgressbarType = { + percentage: number; + active: boolean; +}; + +export function StatusProgressbar(props: StatusProgressbarType) { + return ( + + + + ); +} + +const useStatus = (): { percentage: number; content: string } => { + const datasources = useSelector(getDatasources); + const pageId = useSelector(getCurrentPageId); + const actions = useSelector(getPageActions(pageId)); + const widgets = useSelector(getCanvasWidgets); + const deps = useSelector(getEvaluationInverseDependencyMap); + const isConnectionPresent = useIsWidgetActionConnectionPresent( + widgets, + actions, + deps, + ); + const isDeployed = !!useSelector(getApplicationLastDeployedAt); + const isFirstTimeUserOnboardingComplete = useSelector( + getFirstTimeUserOnboardingComplete, + ); + + if (isFirstTimeUserOnboardingComplete) { + return { + percentage: 100, + content: createMessage(ONBOARDING_STATUS_STEPS_SIXTH), + }; + } + + let content = ""; + let percentage = 0; + if (!datasources.length && !actions.length) { + content = + Object.keys(widgets).length === 1 + ? createMessage(ONBOARDING_STATUS_STEPS_FIRST) + : createMessage(ONBOARDING_STATUS_STEPS_FIRST_ALT); + } else if (!actions.length) { + content = createMessage(ONBOARDING_STATUS_STEPS_SECOND); + } else if (Object.keys(widgets).length === 1) { + content = createMessage(ONBOARDING_STATUS_STEPS_THIRD); + } else if (!isConnectionPresent) { + content = createMessage(ONBOARDING_STATUS_STEPS_FOURTH); + } else if (!isDeployed) { + content = createMessage(ONBOARDING_STATUS_STEPS_FIVETH); + } else { + content = createMessage(ONBOARDING_STATUS_STEPS_SIXTH); + } + + if (datasources.length || actions.length) { + percentage += 20; + } + + if (actions.length) { + percentage += 20; + } + + if (Object.keys(widgets).length > 1) { + percentage += 20; + } + + if (isConnectionPresent) { + percentage += 20; + } + + if (isDeployed) { + percentage += 20; + } + + return { + percentage, + content, + }; +}; + +export function OnboardingStatusbar(props: RouteComponentProps) { + const dispatch = useDispatch(); + const applicationId = useSelector(getCurrentApplicationId); + const pageId = useSelector(getCurrentPageId); + const { content, percentage } = useStatus(); + const isChecklistPage = props.location.pathname.indexOf("/checklist") > -1; + const isGenerateAppPage = + props.location.pathname.indexOf("/generate-page/form") > -1; + const isFirstTimeUserOnboardingComplete = useSelector( + getFirstTimeUserOnboardingComplete, + ); + const intiateOnboarding = useIntiateOnboarding(); + if (isGenerateAppPage) { + return null; + } + const endFirstTimeUserOnboarding = (event?: SyntheticEvent) => { + event?.stopPropagation(); + dispatch({ + type: ReduxActionTypes.END_FIRST_TIME_USER_ONBOARDING, + }); + intiateOnboarding(); + }; + if (percentage === 100 && !isFirstTimeUserOnboardingComplete) { + dispatch({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: false, + }); + dispatch({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: "", + }); + dispatch({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_COMPLETE, + payload: true, + }); + } + + return ( + { + history.push(getOnboardingCheckListUrl(applicationId, pageId)); + }} + > + + + {createMessage(ONBOARDING_STATUS_GET_STARTED)} + + + {content}   + {!isChecklistPage && ( + + )} + + + + ); +} + +export default withRouter(OnboardingStatusbar); diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.test.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.test.tsx new file mode 100644 index 000000000000..7736ff1bf9c4 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.test.tsx @@ -0,0 +1,143 @@ +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { INTEGRATION_EDITOR_URL, INTEGRATION_TABS } from "constants/routes"; +import React from "react"; +import { Provider } from "react-redux"; +import { fireEvent, render, screen } from "test/testUtils"; +import OnboardingTasks from "./Tasks"; +import { getStore, initialState } from "./testUtils"; + +const dispatch = jest.fn(); +jest.mock("react-redux", () => { + const originalModule = jest.requireActual("react-redux"); + return { + ...originalModule, + useDispatch: () => dispatch, + }; +}); + +let history: any; +jest.mock("utils/history", () => { + history = jest.fn(); + return { + push: history, + }; +}); + +let container: any; + +function renderComponent(store: any) { + render( + + + , + container, + ); +} + +describe("Tasks", () => { + beforeEach(() => { + container = document.createElement("div"); + document.body.appendChild(container); + }); + + afterEach(() => { + jest.clearAllMocks(); + }); + + it("is rendered", async () => { + renderComponent(getStore(0)); + const wrapper = await screen.findAllByTestId("onboarding-tasks-wrapper"); + expect(wrapper.length).not.toBe(0); + }); + + it("is showing `Add a datasource` task", async () => { + const store = getStore(0); + renderComponent(store); + const text = await screen.findAllByTestId( + "onboarding-tasks-datasource-text", + ); + expect(text.length).toBe(1); + const button = await screen.findAllByTestId( + "onboarding-tasks-datasource-button", + ); + expect(button.length).toBe(1); + fireEvent.click(button[0]); + expect(history).toHaveBeenCalledWith( + INTEGRATION_EDITOR_URL( + initialState.entities.pageList.applicationId, + initialState.entities.pageList.currentPageId, + INTEGRATION_TABS.NEW, + ), + ); + const alt = await screen.findAllByTestId("onboarding-tasks-datasource-alt"); + expect(alt.length).toBe(1); + fireEvent.click(alt[0]); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION, + payload: true, + }); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN, + payload: true, + }); + }); + + it("is showing `Add a Query` task", async () => { + const store = getStore(1); + renderComponent(store); + const text = await screen.findAllByTestId("onboarding-tasks-action-text"); + expect(text.length).toBe(1); + const button = await screen.findAllByTestId( + "onboarding-tasks-action-button", + ); + expect(button.length).toBe(1); + fireEvent.click(button[0]); + expect(history).toHaveBeenCalledWith( + INTEGRATION_EDITOR_URL( + initialState.entities.pageList.applicationId, + initialState.entities.pageList.currentPageId, + INTEGRATION_TABS.ACTIVE, + ), + ); + const alt = await screen.findAllByTestId("onboarding-tasks-action-alt"); + expect(alt.length).toBe(1); + fireEvent.click(alt[0]); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION, + payload: true, + }); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN, + payload: true, + }); + }); + + it("is showing `Add a widget` task", async () => { + const store = getStore(2); + renderComponent(store); + const text = await screen.findAllByTestId("onboarding-tasks-widget-text"); + expect(text.length).toBe(1); + const button = await screen.findAllByTestId( + "onboarding-tasks-widget-button", + ); + expect(button.length).toBe(1); + fireEvent.click(button[0]); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION, + payload: true, + }); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN, + payload: true, + }); + const alt = await screen.findAllByTestId("onboarding-tasks-widget-alt"); + expect(alt.length).toBe(1); + fireEvent.click(alt[0]); + expect(dispatch).toHaveBeenCalledWith({ + type: ReduxActionTypes.PUBLISH_APPLICATION_INIT, + payload: { + applicationId: initialState.entities.pageList.applicationId, + }, + }); + }); +}); diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.tsx b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.tsx new file mode 100644 index 000000000000..d2913dcb55bf --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.tsx @@ -0,0 +1,268 @@ +import { toggleInOnboardingWidgetSelection } from "actions/onboardingActions"; +import { forceOpenWidgetPanel } from "actions/widgetSidebarActions"; +import Button from "components/ads/Button"; +import { + ONBOARDING_TASK_DATASOURCE_BODY, + ONBOARDING_TASK_DATASOURCE_HEADER, + ONBOARDING_TASK_DATASOURCE_BUTTON, + ONBOARDING_TASK_DATASOURCE_FOOTER_ACTION, + ONBOARDING_TASK_DATASOURCE_FOOTER, + ONBOARDING_TASK_QUERY_HEADER, + ONBOARDING_TASK_QUERY_BODY, + ONBOARDING_TASK_QUERY_BUTTON, + ONBOARDING_TASK_QUERY_FOOTER_ACTION, + ONBOARDING_TASK_WIDGET_HEADER, + ONBOARDING_TASK_WIDGET_BODY, + ONBOARDING_TASK_WIDGET_BUTTON, + ONBOARDING_TASK_WIDGET_FOOTER_ACTION, + ONBOARDING_TASK_FOOTER, + createMessage, +} from "constants/messages"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { INTEGRATION_EDITOR_URL, INTEGRATION_TABS } from "constants/routes"; +import { ASSETS_CDN_URL } from "constants/ThirdPartyConstants"; +import React from "react"; +import { useDispatch } from "react-redux"; +import { + getCurrentApplicationId, + getCurrentPageId, +} from "selectors/editorSelectors"; +import { + getCanvasWidgets, + getDatasources, + getPageActions, +} from "selectors/entitiesSelector"; +import { getFirstTimeUserOnboardingModal } from "selectors/onboardingSelectors"; +import { useSelector } from "store"; +import styled from "styled-components"; +import AnalyticsUtil from "utils/AnalyticsUtil"; +import history from "utils/history"; +import IntroductionModal from "./IntroductionModal"; + +const Wrapper = styled.div` + width: 100%; + display: flex; + align-items: center; + justify-content: center; + height: calc(100vh - 36px); + margin: 0 auto; + background-color: #fff; +`; + +const CenteredContainer = styled.div` + text-align: center; + width: 529px; +`; + +const TaskImageContainer = styled.div` + width: 220px; + margin: 0 auto; +`; + +const TaskImage = styled.img` + width: 100%; +`; + +const TaskHeader = styled.h5` + font-size: 24px; + margin-bottom: 16px; +`; + +const TaskSubText = styled.p` + width: 100%; +`; + +const TaskButtonWrapper = styled.div` + margin-top: 30px; +`; + +const StyledButton = styled(Button)` + width: 208px; + margin: 0 auto; + height: 38px; +`; + +const Taskfootnote = styled.p` + margin-top: 30px; + & span { + color: ${(props) => props.theme.colors.welcomeTourStickySidebarBackground}; + font-weight: 600; + cursor: pointer; + } +`; + +const getOnboardingDatasourceImg = () => + `${ASSETS_CDN_URL}/onboarding-datasource.svg`; +const getOnboardingQueryImg = () => `${ASSETS_CDN_URL}/onboarding-query.svg`; +const getOnboardingWidgetImg = () => `${ASSETS_CDN_URL}/onboarding-widget.svg`; + +export default function OnboardingTasks() { + const applicationId = useSelector(getCurrentApplicationId); + const pageId = useSelector(getCurrentPageId); + let content; + const datasources = useSelector(getDatasources); + const actions = useSelector(getPageActions(pageId)); + const widgets = useSelector(getCanvasWidgets); + const dispatch = useDispatch(); + const showModal = useSelector(getFirstTimeUserOnboardingModal); + if (!datasources.length && !actions.length) { + content = ( + + + + + + {createMessage(ONBOARDING_TASK_DATASOURCE_HEADER)} + + + {createMessage(ONBOARDING_TASK_DATASOURCE_BODY)} + + + { + AnalyticsUtil.logEvent("SIGNPOSTING_CREATE_DATASOURCE_CLICK", { + from: "CANVAS", + }); + history.push( + INTEGRATION_EDITOR_URL( + applicationId, + pageId, + INTEGRATION_TABS.NEW, + ), + ); + }} + tag="button" + text={createMessage(ONBOARDING_TASK_DATASOURCE_BUTTON)} + type="button" + /> + + + {createMessage(ONBOARDING_TASK_FOOTER)}  + { + AnalyticsUtil.logEvent("SIGNPOSTING_ADD_WIDGET_CLICK", { + from: "CANVAS", + }); + dispatch(toggleInOnboardingWidgetSelection(true)); + dispatch(forceOpenWidgetPanel(true)); + }} + > + {createMessage(ONBOARDING_TASK_DATASOURCE_FOOTER_ACTION)} + +  {createMessage(ONBOARDING_TASK_DATASOURCE_FOOTER)} + + + ); + } else if (!actions.length) { + content = ( + + + + + + {createMessage(ONBOARDING_TASK_QUERY_HEADER)} + + {createMessage(ONBOARDING_TASK_QUERY_BODY)} + + { + AnalyticsUtil.logEvent("SIGNPOSTING_CREATE_QUERY_CLICK", { + from: "CANVAS", + }); + history.push( + INTEGRATION_EDITOR_URL( + applicationId, + pageId, + INTEGRATION_TABS.ACTIVE, + ), + ); + }} + tag="button" + text={createMessage(ONBOARDING_TASK_QUERY_BUTTON)} + type="button" + /> + + + {createMessage(ONBOARDING_TASK_FOOTER)}  + { + AnalyticsUtil.logEvent("SIGNPOSTING_ADD_WIDGET_CLICK", { + from: "CANVAS", + }); + dispatch(toggleInOnboardingWidgetSelection(true)); + dispatch(forceOpenWidgetPanel(true)); + }} + > + {createMessage(ONBOARDING_TASK_QUERY_FOOTER_ACTION)} + + + + ); + } else if (Object.keys(widgets).length === 1) { + content = ( + + + + + + {createMessage(ONBOARDING_TASK_WIDGET_HEADER)} + + {createMessage(ONBOARDING_TASK_WIDGET_BODY)} + + { + AnalyticsUtil.logEvent("SIGNPOSTING_ADD_WIDGET_CLICK", { + from: "CANVAS", + }); + dispatch(toggleInOnboardingWidgetSelection(true)); + dispatch(forceOpenWidgetPanel(true)); + }} + tag="button" + text={createMessage(ONBOARDING_TASK_WIDGET_BUTTON)} + type="button" + /> + + + {createMessage(ONBOARDING_TASK_FOOTER)}  + { + AnalyticsUtil.logEvent("SIGNPOSTING_PUBLISH_CLICK", { + from: "CANVAS", + }); + dispatch({ + type: ReduxActionTypes.PUBLISH_APPLICATION_INIT, + payload: { + applicationId, + }, + }); + }} + > + {createMessage(ONBOARDING_TASK_WIDGET_FOOTER_ACTION)} + + . + + + ); + } + return ( + + {content} + {showModal && ( + { + dispatch({ + type: ReduxActionTypes.SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL, + payload: false, + }); + }} + /> + )} + + ); +} diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/Utils.ts b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Utils.ts new file mode 100644 index 000000000000..98e83667b0b9 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/Utils.ts @@ -0,0 +1,20 @@ +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { APPLICATIONS_URL } from "constants/routes"; +import { Dispatch } from "react"; +import AnalyticsUtil from "utils/AnalyticsUtil"; +import history from "utils/history"; +export const triggerWelcomeTour = (dispatch: Dispatch) => { + AnalyticsUtil.logEvent("SIGNPOSTING_WELCOME_TOUR_CLICK"); + history.push(APPLICATIONS_URL); + dispatch({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: false, + }); + dispatch({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: "", + }); + dispatch({ + type: ReduxActionTypes.ONBOARDING_CREATE_APPLICATION, + }); +}; diff --git a/app/client/src/pages/Editor/FirstTimeUserOnboarding/testUtils.ts b/app/client/src/pages/Editor/FirstTimeUserOnboarding/testUtils.ts new file mode 100644 index 000000000000..8c58374a22a0 --- /dev/null +++ b/app/client/src/pages/Editor/FirstTimeUserOnboarding/testUtils.ts @@ -0,0 +1,79 @@ +import _ from "lodash"; +import configureStore from "redux-mock-store"; + +const PAGE_ID = 2; +export const initialState: any = { + entities: { + pageList: { + applicationId: 1, + currentPageId: PAGE_ID, + }, + datasources: { + list: [], + }, + actions: [], + canvasWidgets: { + main_component: {}, + }, + }, + evaluations: { + dependencies: { + inverseDependencyMap: {}, + }, + }, + ui: { + applications: { + currentApplication: { + lastDeployedAt: null, + }, + }, + onBoarding: { + firstTimeUserOnboardingComplete: false, + showFirstTimeUserOnboardingModal: true, + enableFirstTimeUserOnboarding: true, + }, + theme: { + theme: { + colors: { + success: { + main: "#e2e2e2", + }, + }, + }, + }, + }, +}; +let state = JSON.parse(JSON.stringify(initialState)); +const mockStore = configureStore(); + +export function getStore(step: number) { + switch (step) { + case 0: + state = _.cloneDeep(initialState); + break; + case 1: + state.entities.datasources.list.push({}); + break; + case 2: + state.entities.actions.push({ config: { pageId: PAGE_ID } }); + break; + case 3: + state.entities.actions = [ + { + config: { + id: Math.random(), + pageId: PAGE_ID, + }, + }, + ]; + state.entities.canvasWidgets[Math.random()] = {}; + break; + case 4: + break; + case 5: + state.ui.applications.currentApplication.lastDeployedAt = Math.random(); + state.ui.onBoarding.firstTimeUserOnboardingComplete = true; + break; + } + return mockStore(state); +} diff --git a/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GeneratePageForm.tsx b/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GeneratePageForm.tsx index 74c44e03a26c..23b9cd0d4057 100644 --- a/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GeneratePageForm.tsx +++ b/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GeneratePageForm.tsx @@ -58,6 +58,8 @@ import Tooltip from "components/ads/Tooltip"; import { Bold, Label, SelectWrapper } from "./styles"; import { GeneratePagePayload } from "./types"; import Icon from "components/ads/Icon"; +import { ReduxActionTypes } from "constants/ReduxActionConstants"; +import { getIsFirstTimeUserOnboardingEnabled } from "selectors/onboardingSelectors"; // ---------- Styles ---------- @@ -242,6 +244,10 @@ function GeneratePageForm() { isFetchingBucketList, } = useS3BucketList(); + const isFirstTimeUserOnboardingEnabled = useSelector( + getIsFirstTimeUserOnboardingEnabled, + ); + const onSelectDataSource = useCallback( ( datasource: string | undefined, @@ -500,6 +506,12 @@ function GeneratePageForm() { AnalyticsUtil.logEvent("GEN_CRUD_PAGE_FORM_SUBMIT"); dispatch(generateTemplateToUpdatePage(payload)); + if (isFirstTimeUserOnboardingEnabled) { + dispatch({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: "", + }); + } }; const handleFormSubmit = () => { diff --git a/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx b/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx index fe43514b171f..984a58ed2c13 100644 --- a/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx +++ b/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx @@ -37,6 +37,21 @@ const EmptyActiveDatasource = styled.div` justify-content: center; `; +const GenerateInfoBanner = styled.div` + width: 518px; +`; + +const GenerateInfoHeader = styled.h5` + margin: 32px 0px 8px; + font-weight: 500; + color: ${(props) => props.theme.colors.textOnGreyBG}; +`; + +const GenerateInfoBody = styled.p` + font-size: 12px; + color: ${(props) => props.theme.colors.searchInput.placeholder}; +`; + type ActiveDataSourcesProps = { dataSources: Datasource[]; applicationId: string; @@ -53,7 +68,6 @@ type ActiveDataSourcesProps = { function ActiveDataSources(props: ActiveDataSourcesProps) { const { dataSources } = props; - const plugins = useSelector((state: AppState) => { return state.entities.plugins.list; }); @@ -87,6 +101,14 @@ function ActiveDataSources(props: ActiveDataSourcesProps) { /> ); })} + + Generate an application + + Quickly create a full application with using our Generation +  Application feature By adding a new query you’ll be able to + choose your own widgets, connect them to your data. + + ); } diff --git a/app/client/src/pages/Editor/MainContainer.tsx b/app/client/src/pages/Editor/MainContainer.tsx index c940c730f4c8..5a2d746e4f8a 100644 --- a/app/client/src/pages/Editor/MainContainer.tsx +++ b/app/client/src/pages/Editor/MainContainer.tsx @@ -2,15 +2,15 @@ import React from "react"; import styled from "styled-components"; import * as Sentry from "@sentry/react"; import { Route, Switch } from "react-router"; - import EditorsRouter from "./routes"; import WidgetsEditor from "./WidgetsEditor"; -import { BUILDER_URL } from "constants/routes"; import Sidebar from "components/editorComponents/Sidebar"; import BottomBar from "./BottomBar"; import getFeatureFlags from "utils/featureFlags"; +import { BUILDER_CHECKLIST_URL, BUILDER_URL } from "constants/routes"; +import OnboardingChecklist from "./FirstTimeUserOnboarding/Checklist"; const SentryRoute = Sentry.withSentryRouting(Route); const Container = styled.div` @@ -38,6 +38,11 @@ function MainContainer() { + diff --git a/app/client/src/pages/Editor/WidgetSidebar.tsx b/app/client/src/pages/Editor/WidgetSidebar.tsx index be21c64670af..2ceff3de0f98 100644 --- a/app/client/src/pages/Editor/WidgetSidebar.tsx +++ b/app/client/src/pages/Editor/WidgetSidebar.tsx @@ -1,5 +1,5 @@ import React, { useRef, useEffect, useState } from "react"; -import { useSelector } from "react-redux"; +import { useDispatch, useSelector } from "react-redux"; import WidgetCard from "./WidgetCard"; import styled from "styled-components"; import { @@ -24,6 +24,7 @@ import { import { BUILDER_PAGE_URL } from "constants/routes"; import OnboardingIndicator from "components/editorComponents/Onboarding/Indicator"; import { useLocation } from "react-router"; +import { forceOpenWidgetPanel } from "actions/widgetSidebarActions"; const MainWrapper = styled.div` text-transform: capitalize; @@ -147,6 +148,11 @@ function WidgetSidebar(props: IPanelProps) { const showTableWidget = currentStep >= OnboardingStep.RUN_QUERY_SUCCESS; const showInputWidget = currentStep >= OnboardingStep.ADD_INPUT_WIDGET; + const dispatch = useDispatch(); + const closeWidgetPanel = () => { + dispatch(forceOpenWidgetPanel(false)); + props.closePanel(); + }; return ( <> @@ -169,7 +175,7 @@ function WidgetSidebar(props: IPanelProps) { color={Colors.WHITE} icon="cross" iconSize={16} - onClick={props.closePanel} + onClick={closeWidgetPanel} /> diff --git a/app/client/src/pages/Editor/WidgetsEditor.tsx b/app/client/src/pages/Editor/WidgetsEditor.tsx index a18c90cc55b7..e67598327b60 100644 --- a/app/client/src/pages/Editor/WidgetsEditor.tsx +++ b/app/client/src/pages/Editor/WidgetsEditor.tsx @@ -28,6 +28,12 @@ import { setCanvasSelectionFromEditor } from "actions/canvasSelectionActions"; import CrudInfoModal from "./GeneratePage/components/CrudInfoModal"; import EditorContextProvider from "components/editorComponents/EditorContextProvider"; import { useAllowEditorDragToSelect } from "utils/hooks/useAllowEditorDragToSelect"; +import OnboardingTasks from "./FirstTimeUserOnboarding/Tasks"; +import { + getIsOnboardingTasksView, + getIsOnboardingWidgetSelection, +} from "selectors/entitiesSelector"; +import { getIsFirstTimeUserOnboardingEnabled } from "selectors/onboardingSelectors"; const EditorWrapper = styled.div` display: flex; @@ -67,6 +73,13 @@ function WidgetsEditor() { const currentPageName = useSelector(getCurrentPageName); const currentApp = useSelector(getCurrentApplication); + const showOnboardingTasks = useSelector(getIsOnboardingTasksView); + const enableFirstTimeUserOnboarding = useSelector( + getIsFirstTimeUserOnboardingEnabled, + ); + const isOnboardingWidgetSelection = useSelector( + getIsOnboardingWidgetSelection, + ); useDynamicAppLayout(); useEffect(() => { PerformanceTracker.stopTracking(PerformanceTransactionName.CLOSE_SIDE_PANE); @@ -137,19 +150,25 @@ function WidgetsEditor() { PerformanceTracker.stopTracking(); return ( - - - {node} - - - - - + {enableFirstTimeUserOnboarding && + showOnboardingTasks && + !isOnboardingWidgetSelection ? ( + + ) : ( + + + {node} + + + + + + )} ); } diff --git a/app/client/src/pages/Editor/utils.ts b/app/client/src/pages/Editor/utils.ts index ed00dbfb48f4..de951a13bc52 100644 --- a/app/client/src/pages/Editor/utils.ts +++ b/app/client/src/pages/Editor/utils.ts @@ -1,4 +1,5 @@ -import { debounce } from "lodash"; +import { getDependenciesFromInverseDependencies } from "components/editorComponents/Debugger/helpers"; +import _, { debounce } from "lodash"; import ReactDOM from "react-dom"; import ResizeObserver from "resize-observer-polyfill"; import getFeatureFlags from "utils/featureFlags"; @@ -168,3 +169,34 @@ const createDragHandler = ( ReactDOM.render(dragHandle(), dragElement); return dragElement; }; + +export const useIsWidgetActionConnectionPresent = ( + widgets: any, + actions: any, + deps: any, +): boolean => { + const actionLables = actions.map((action: any) => action.config.name); + + let isBindingAvailable = !!Object.values(widgets).find((widget: any) => { + const depsConnections = getDependenciesFromInverseDependencies( + deps, + widget.widgetName, + ); + return !!_.intersection(depsConnections?.directDependencies, actionLables) + .length; + }); + + if (!isBindingAvailable) { + isBindingAvailable = !!Object.values(widgets).find((widget: any) => { + return ( + widget.dynamicTriggerPathList && + !!widget.dynamicTriggerPathList.find((path: { key: string }) => { + return !!actionLables.find((label: string) => { + return widget[path.key].indexOf(`${label}.run`) > -1; + }); + }) + ); + }); + } + return isBindingAvailable; +}; diff --git a/app/client/src/pages/common/ProfileDropdown.tsx b/app/client/src/pages/common/ProfileDropdown.tsx index 7d9b8bf5fa75..98bd1d4818f9 100644 --- a/app/client/src/pages/common/ProfileDropdown.tsx +++ b/app/client/src/pages/common/ProfileDropdown.tsx @@ -15,7 +15,6 @@ import ProfileImage from "./ProfileImage"; import { PopperModifiers } from "@blueprintjs/core"; import { PROFILE } from "constants/routes"; import UserApi from "api/UserApi"; - type TagProps = CommonComponentProps & { onClick?: (text: string) => void; userName?: string; diff --git a/app/client/src/reducers/uiReducers/onBoardingReducer.ts b/app/client/src/reducers/uiReducers/onBoardingReducer.ts index 6d5671112727..9da503d46fa4 100644 --- a/app/client/src/reducers/uiReducers/onBoardingReducer.ts +++ b/app/client/src/reducers/uiReducers/onBoardingReducer.ts @@ -27,6 +27,12 @@ const initialState: OnboardingState = { }, allowMinimize: false, }, + inOnboardingWidgetSelection: false, + enableFirstTimeUserOnboarding: false, + forceOpenWidgetPanel: false, + firstTimeUserOnboardingApplicationId: "", + firstTimeUserOnboardingComplete: false, + showFirstTimeUserOnboardingModal: false, }; export interface OnboardingState { @@ -41,6 +47,12 @@ export interface OnboardingState { showHelper: boolean; helperStepConfig: OnboardingHelperConfig; showingIndicator: OnboardingStep; + inOnboardingWidgetSelection: boolean; + enableFirstTimeUserOnboarding: boolean; + forceOpenWidgetPanel: boolean; + firstTimeUserOnboardingApplicationId: string; + firstTimeUserOnboardingComplete: boolean; + showFirstTimeUserOnboardingModal: boolean; } const onboardingReducer = createReducer(initialState, { @@ -85,6 +97,10 @@ const onboardingReducer = createReducer(initialState, { return { ...initialState, inOnboarding: action.payload, + enableFirstTimeUserOnboarding: state.enableFirstTimeUserOnboarding, + firstTimeUserOnboardingApplicationId: + state.firstTimeUserOnboardingApplicationId, + showFirstTimeUserOnboardingModal: state.showFirstTimeUserOnboardingModal, }; }, [ReduxActionTypes.ADD_WIDGET_COMPLETE]: (state: OnboardingState) => { @@ -142,8 +158,63 @@ const onboardingReducer = createReducer(initialState, { return { ...state, ...initialState, + enableFirstTimeUserOnboarding: state.enableFirstTimeUserOnboarding, + firstTimeUserOnboardingApplicationId: + state.firstTimeUserOnboardingApplicationId, + showFirstTimeUserOnboardingModal: state.showFirstTimeUserOnboardingModal, }; }, + [ReduxActionTypes.TOGGLE_ONBOARDING_WIDGET_SELECTION]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { + ...state, + inOnboardingWidgetSelection: action.payload, + }; + }, + [ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { + ...state, + enableFirstTimeUserOnboarding: action.payload, + }; + }, + [ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { + ...state, + firstTimeUserOnboardingApplicationId: action.payload, + }; + }, + [ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_COMPLETE]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { + ...state, + firstTimeUserOnboardingComplete: action.payload, + }; + }, + [ReduxActionTypes.SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { + ...state, + showFirstTimeUserOnboardingModal: action.payload, + }; + }, + [ReduxActionTypes.SET_FORCE_WIDGET_PANEL_OPEN]: ( + state: OnboardingState, + action: ReduxAction, + ) => { + return { ...state, forceOpenWidgetPanel: action.payload }; + }, }); export default onboardingReducer; diff --git a/app/client/src/sagas/ApplicationSagas.tsx b/app/client/src/sagas/ApplicationSagas.tsx index d67296701521..f3d7b112a45c 100644 --- a/app/client/src/sagas/ApplicationSagas.tsx +++ b/app/client/src/sagas/ApplicationSagas.tsx @@ -63,6 +63,10 @@ import { deleteRecentAppEntities } from "utils/storage"; import { reconnectWebsocket as reconnectWebsocketAction } from "actions/websocketActions"; import { getCurrentOrg } from "selectors/organizationSelectors"; import { Org } from "constants/orgConstants"; +import { + getEnableFirstTimeUserOnboarding, + getFirstTimeUserOnboardingApplicationId, +} from "selectors/onboardingSelectors"; const getDefaultPageId = ( pages?: ApplicationPagePayload[], @@ -107,6 +111,13 @@ export function* publishApplicationSaga( appicationViewPageUrl += "?onboardingComplete=true"; } + yield put({ + type: ReduxActionTypes.FETCH_APPLICATION_INIT, + payload: { + applicationId: applicationId, + mode: APP_MODE.EDIT, + }, + }); // If the tab is opened focus and reload else open in new tab if (!windowReference || windowReference.closed) { windowReference = window.open(appicationViewPageUrl, "_blank"); @@ -457,10 +468,29 @@ export function* createApplicationSaga( application, }, }); - const pageURL = getGenerateTemplateURL( - application.id, - application.defaultPageId, + const isFirstTimeUserOnboardingEnabled = yield select( + getEnableFirstTimeUserOnboarding, + ); + const FirstTimeUserOnboardingApplicationId = yield select( + getFirstTimeUserOnboardingApplicationId, ); + let pageURL; + if ( + isFirstTimeUserOnboardingEnabled && + FirstTimeUserOnboardingApplicationId === "" + ) { + yield put({ + type: + ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: application.id, + }); + pageURL = BUILDER_PAGE_URL(application.id, application.defaultPageId); + } else { + pageURL = getGenerateTemplateURL( + application.id, + application.defaultPageId, + ); + } history.push(pageURL); // subscribe to newly created application diff --git a/app/client/src/sagas/OnboardingSagas.ts b/app/client/src/sagas/OnboardingSagas.ts index 9d5ddb3ed041..25951b1d80c3 100644 --- a/app/client/src/sagas/OnboardingSagas.ts +++ b/app/client/src/sagas/OnboardingSagas.ts @@ -3,6 +3,7 @@ import DatasourcesApi from "api/DatasourcesApi"; import { Datasource } from "entities/Datasource"; import { Plugin } from "api/PluginApi"; import { + ReduxAction, ReduxActionErrorTypes, ReduxActionTypes, WidgetReduxActionTypes, @@ -28,6 +29,9 @@ import { getDataTree } from "selectors/dataTreeSelectors"; import { getCurrentOrgId } from "selectors/organizationSelectors"; import { getOnboardingState, + setEnableFirstTimeUserOnboarding as storeEnableFirstTimeUserOnboarding, + setFirstTimeUserOnboardingApplicationId as storeFirstTimeUserOnboardingApplicationId, + setFirstTimeUserOnboardingIntroModalVisibility as storeFirstTimeUserOnboardingIntroModalVisibility, setOnboardingState, setOnboardingWelcomeState, } from "utils/storage"; @@ -101,6 +105,12 @@ import { PropertyEvaluationErrorType, } from "utils/DynamicBindingUtils"; import { GRID_DENSITY_MIGRATION_V1 } from "widgets/constants"; +import { + getFirstTimeUserOnboardingApplicationId, + getIsFirstTimeUserOnboardingEnabled, +} from "selectors/onboardingSelectors"; +import { Toaster } from "components/ads/Toast"; +import { Variant } from "components/ads/common"; export const getCurrentStep = (state: AppState) => state.ui.onBoarding.currentStep; @@ -561,7 +571,19 @@ function* createApplication() { const userOrgs = yield select(getUserApplicationsOrgs); const currentOrganizationId = currentUser.currentOrganizationId; let organization; - + const isFirstTimeUserOnboardingdEnabled = yield select( + getIsFirstTimeUserOnboardingEnabled, + ); + if (isFirstTimeUserOnboardingdEnabled) { + yield put({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: false, + }); + yield put({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: "", + }); + } if (!currentOrganizationId) { organization = userOrgs[0]; } else { @@ -889,6 +911,54 @@ export default function* onboardingSagas() { } } +function* setEnableFirstTimeUserOnboarding(action: ReduxAction) { + yield storeEnableFirstTimeUserOnboarding(action.payload); +} + +function* setFirstTimeUserOnboardingApplicationId(action: ReduxAction) { + yield storeFirstTimeUserOnboardingApplicationId(action.payload); +} + +function* setFirstTimeUserOnboardingIntroModalVisibility( + action: ReduxAction, +) { + yield storeFirstTimeUserOnboardingIntroModalVisibility(action.payload); +} + +function* endFirstTimeUserOnboardingSaga() { + const firstTimeUserExperienceAppId = yield select( + getFirstTimeUserOnboardingApplicationId, + ); + yield put({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: false, + }); + yield put({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: "", + }); + Toaster.show({ + text: "Skipped First time user experience", + hideProgressBar: false, + variant: Variant.success, + dispatchableAction: { + type: ReduxActionTypes.UNDO_END_FIRST_TIME_USER_ONBOARDING, + payload: firstTimeUserExperienceAppId, + }, + }); +} + +function* undoEndFirstTimeUserOnboardingSaga(action: ReduxAction) { + yield put({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: true, + }); + yield put({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: action.payload, + }); +} + function* onboardingActionSagas() { yield all([ takeLatest( @@ -934,5 +1004,25 @@ function* onboardingActionSagas() { ReduxActionTypes.ONBOARDING_CREATE_APPLICATION, createApplication, ), + takeLatest( + ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + setEnableFirstTimeUserOnboarding, + ), + takeLatest( + ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + setFirstTimeUserOnboardingApplicationId, + ), + takeLatest( + ReduxActionTypes.SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL, + setFirstTimeUserOnboardingIntroModalVisibility, + ), + takeLatest( + ReduxActionTypes.END_FIRST_TIME_USER_ONBOARDING, + endFirstTimeUserOnboardingSaga, + ), + takeLatest( + ReduxActionTypes.UNDO_END_FIRST_TIME_USER_ONBOARDING, + undoEndFirstTimeUserOnboardingSaga, + ), ]); } diff --git a/app/client/src/sagas/PageSagas.tsx b/app/client/src/sagas/PageSagas.tsx index 0075d6be239e..106cfb4ecbc4 100644 --- a/app/client/src/sagas/PageSagas.tsx +++ b/app/client/src/sagas/PageSagas.tsx @@ -100,6 +100,10 @@ import { import { getAppMode } from "selectors/applicationSelectors"; import { setCrudInfoModalData } from "actions/crudInfoModalActions"; import { selectMultipleWidgetsAction } from "actions/widgetSelectionActions"; +import { + getIsFirstTimeUserOnboardingEnabled, + getFirstTimeUserOnboardingApplicationId, +} from "selectors/onboardingSelectors"; import WidgetFactory from "utils/WidgetFactory"; const WidgetTypes = WidgetFactory.widgetTypes; @@ -509,12 +513,31 @@ export function* createPageSaga( }); // route to generate template for new page created if (!createPageAction.payload.blockNavigation) { - history.push( - getGenerateTemplateURL( - createPageAction.payload.applicationId, - response.data.id, - ), + const firstTimeUserOnboardingApplicationId = yield select( + getFirstTimeUserOnboardingApplicationId, + ); + const isFirstTimeUserOnboardingEnabled = yield select( + getIsFirstTimeUserOnboardingEnabled, ); + if ( + firstTimeUserOnboardingApplicationId == + createPageAction.payload.applicationId && + isFirstTimeUserOnboardingEnabled + ) { + history.push( + BUILDER_PAGE_URL( + createPageAction.payload.applicationId, + response.data.id, + ), + ); + } else { + history.push( + getGenerateTemplateURL( + createPageAction.payload.applicationId, + response.data.id, + ), + ); + } } } } catch (error) { diff --git a/app/client/src/sagas/userSagas.tsx b/app/client/src/sagas/userSagas.tsx index 8906b8e376b9..9ef7a3aca039 100644 --- a/app/client/src/sagas/userSagas.tsx +++ b/app/client/src/sagas/userSagas.tsx @@ -54,6 +54,11 @@ import log from "loglevel"; import { getCurrentUser } from "selectors/usersSelectors"; import { initSocketConnection } from "actions/websocketActions"; +import { + getEnableFirstTimeUserOnboarding, + getFirstTimeUserOnboardingApplicationId, + getFirstTimeUserOnboardingIntroModalVisibility, +} from "utils/storage"; export function* createUserSaga( action: ReduxActionWithPromise, @@ -417,6 +422,27 @@ function* fetchFeatureFlags() { } } +function* updateFirstTimeUserOnboardingSage() { + const enable = yield getEnableFirstTimeUserOnboarding(); + + if (enable) { + const applicationId = yield getFirstTimeUserOnboardingApplicationId() || ""; + const introModalVisibility = yield getFirstTimeUserOnboardingIntroModalVisibility(); + yield put({ + type: ReduxActionTypes.SET_ENABLE_FIRST_TIME_USER_ONBOARDING, + payload: true, + }); + yield put({ + type: ReduxActionTypes.SET_FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + payload: applicationId, + }); + yield put({ + type: ReduxActionTypes.SET_SHOW_FIRST_TIME_USER_ONBOARDING_MODAL, + payload: introModalVisibility, + }); + } +} + export default function* userSagas() { yield all([ takeLatest(ReduxActionTypes.CREATE_USER_INIT, createUserSaga), @@ -442,6 +468,10 @@ export default function* userSagas() { takeLatest(ReduxActionTypes.UPLOAD_PROFILE_PHOTO, updatePhoto), takeLatest(ReduxActionTypes.LEAVE_ORG_INIT, leaveOrgSaga), takeLatest(ReduxActionTypes.FETCH_FEATURE_FLAGS_INIT, fetchFeatureFlags), + takeLatest( + ReduxActionTypes.FETCH_USER_DETAILS_SUCCESS, + updateFirstTimeUserOnboardingSage, + ), ]); } diff --git a/app/client/src/selectors/editorSelectors.tsx b/app/client/src/selectors/editorSelectors.tsx index c9c61e5d15ee..bb32e23a087a 100644 --- a/app/client/src/selectors/editorSelectors.tsx +++ b/app/client/src/selectors/editorSelectors.tsx @@ -367,3 +367,6 @@ export const getJSCollectionById = createSelector( } }, ); + +export const getApplicationLastDeployedAt = (state: AppState) => + state.ui.applications.currentApplication?.lastDeployedAt; diff --git a/app/client/src/selectors/entitiesSelector.ts b/app/client/src/selectors/entitiesSelector.ts index a10df1dbd644..180bad80e36d 100644 --- a/app/client/src/selectors/entitiesSelector.ts +++ b/app/client/src/selectors/entitiesSelector.ts @@ -495,3 +495,21 @@ export const widgetsMapWithParentModalId = (state: AppState) => { ? getAllWidgetsMap(state) : getCanvasWidgetsWithParentId(state); }; + +export const getIsOnboardingTasksView = createSelector( + getCanvasWidgets, + (widgets) => { + return Object.keys(widgets).length == 1; + }, +); + +export const getIsOnboardingWidgetSelection = (state: AppState) => + state.ui.onBoarding.inOnboardingWidgetSelection; + +export const getPageActions = (pageId = "") => { + return (state: AppState) => { + return state.entities.actions.filter((action) => { + return action.config.pageId == pageId; + }); + }; +}; diff --git a/app/client/src/selectors/onboardingSelectors.tsx b/app/client/src/selectors/onboardingSelectors.tsx index 8b45231c9cc6..5b1244090509 100644 --- a/app/client/src/selectors/onboardingSelectors.tsx +++ b/app/client/src/selectors/onboardingSelectors.tsx @@ -1,4 +1,5 @@ import { AppState } from "reducers"; +import { createSelector } from "reselect"; export const getIsOnboardingHelperVisible = (state: AppState) => { const urlSearchParams = new URL(window.location.href).searchParams; @@ -8,3 +9,26 @@ export const getIsOnboardingHelperVisible = (state: AppState) => { export const showWelcomeScreen = (state: AppState) => state.ui.onBoarding.showOnboardingLoader; +export const getEnableFirstTimeUserOnboarding = (state: AppState) => { + return state.ui.onBoarding.enableFirstTimeUserOnboarding; +}; + +export const getFirstTimeUserOnboardingApplicationId = (state: AppState) => { + return state.ui.onBoarding.firstTimeUserOnboardingApplicationId; +}; + +export const getFirstTimeUserOnboardingComplete = (state: AppState) => { + return state.ui.onBoarding.firstTimeUserOnboardingComplete; +}; + +export const getFirstTimeUserOnboardingModal = (state: AppState) => + state.ui.onBoarding.showFirstTimeUserOnboardingModal; + +export const getIsFirstTimeUserOnboardingEnabled = createSelector( + (state: AppState) => state.entities.pageList.applicationId, + getEnableFirstTimeUserOnboarding, + getFirstTimeUserOnboardingApplicationId, + (currentApplicationId, enabled, applicationId) => { + return enabled && currentApplicationId === applicationId; + }, +); diff --git a/app/client/src/utils/AnalyticsUtil.tsx b/app/client/src/utils/AnalyticsUtil.tsx index e1339d89a3f7..a13a9c4353bc 100644 --- a/app/client/src/utils/AnalyticsUtil.tsx +++ b/app/client/src/utils/AnalyticsUtil.tsx @@ -170,7 +170,15 @@ export type EventName = | "SNIPPET_EXECUTE" | "SNIPPET_FILTER" | "SNIPPET_COPIED" - | "SNIPPET_CATEGORY_CLICK"; + | "SNIPPET_CATEGORY_CLICK" + | "SIGNPOSTING_SKIP" + | "SIGNPOSTING_CREATE_DATASOURCE_CLICK" + | "SIGNPOSTING_CREATE_QUERY_CLICK" + | "SIGNPOSTING_ADD_WIDGET_CLICK" + | "SIGNPOSTING_CONNECT_WIDGET_CLICK" + | "SIGNPOSTING_PUBLISH_CLICK" + | "SIGNPOSTING_BUILD_APP_CLICK" + | "SIGNPOSTING_WELCOME_TOUR_CLICK"; function getApplicationId(location: Location) { const pathSplit = location.pathname.split("/"); diff --git a/app/client/src/utils/storage.ts b/app/client/src/utils/storage.ts index e98430d2ce02..1b0b8e27c642 100644 --- a/app/client/src/utils/storage.ts +++ b/app/client/src/utils/storage.ts @@ -13,6 +13,11 @@ const STORAGE_KEYS: { [id: string]: string } = { RECENT_ENTITIES: "RecentEntities", COMMENTS_INTRO_SEEN: "CommentsIntroSeen", ONBOARDING_FORM_IN_PROGRESS: "ONBOARDING_FORM_IN_PROGRESS", + ENABLE_FIRST_TIME_USER_ONBOARDING: "ENABLE_FIRST_TIME_USER_ONBOARDING", + FIRST_TIME_USER_ONBOARDING_APPLICATION_ID: + "FIRST_TIME_USER_ONBOARDING_APPLICATION_ID", + FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY: + "FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY", }; const store = localforage.createInstance({ @@ -211,3 +216,113 @@ export const getCommentsIntroSeen = async () => { log.error(error); } }; + +export const setOnboardingFormInProgress = async (flag?: boolean) => { + try { + await store.setItem(STORAGE_KEYS.ONBOARDING_FORM_IN_PROGRESS, flag); + return true; + } catch (error) { + log.error("An error occurred when setting ONBOARDING_FORM_IN_PROGRESS"); + log.error(error); + return false; + } +}; + +export const getOnboardingFormInProgress = async () => { + try { + const onboardingFormInProgress = await store.getItem( + STORAGE_KEYS.ONBOARDING_FORM_IN_PROGRESS, + ); + return onboardingFormInProgress; + } catch (error) { + log.error("An error occurred while fetching ONBOARDING_FORM_IN_PROGRESS"); + log.error(error); + } +}; + +export const setEnableFirstTimeUserOnboarding = async (flag: boolean) => { + try { + await store.setItem(STORAGE_KEYS.ENABLE_FIRST_TIME_USER_ONBOARDING, flag); + return true; + } catch (error) { + log.error( + "An error occurred while setting ENABLE_FIRST_TIME_USER_ONBOARDING", + ); + log.error(error); + } +}; + +export const getEnableFirstTimeUserOnboarding = async () => { + try { + const enableFirstTimeUserOnboarding: any = await store.getItem( + STORAGE_KEYS.ENABLE_FIRST_TIME_USER_ONBOARDING, + ); + enableFirstTimeUserOnboarding.toString(); + return enableFirstTimeUserOnboarding; + } catch (error) { + log.error( + "An error occurred while fetching ENABLE_FIRST_TIME_USER_ONBOARDING", + ); + log.error(error); + } +}; + +export const setFirstTimeUserOnboardingApplicationId = async (id: string) => { + try { + await store.setItem( + STORAGE_KEYS.FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + id, + ); + return true; + } catch (error) { + log.error( + "An error occurred while setting FIRST_TIME_USER_ONBOARDING_APPLICATION_ID", + ); + log.error(error); + } +}; + +export const getFirstTimeUserOnboardingApplicationId = async () => { + try { + const id = await store.getItem( + STORAGE_KEYS.FIRST_TIME_USER_ONBOARDING_APPLICATION_ID, + ); + return id; + } catch (error) { + log.error( + "An error occurred while fetching FIRST_TIME_USER_ONBOARDING_APPLICATION_ID", + ); + log.error(error); + } +}; + +export const setFirstTimeUserOnboardingIntroModalVisibility = async ( + flag: boolean, +) => { + try { + await store.setItem( + STORAGE_KEYS.FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY, + flag, + ); + return true; + } catch (error) { + log.error( + "An error occurred while setting FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY", + ); + log.error(error); + } +}; + +export const getFirstTimeUserOnboardingIntroModalVisibility = async () => { + try { + const flag = await store.getItem( + STORAGE_KEYS.FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY, + ); + return flag; + } catch (error) { + log.error( + "An error occurred while fetching FIRST_TIME_USER_ONBOARDING_INTRO_MODAL_VISIBILITY", + ); + log.error(error); + } +}; diff --git a/coverage-summary.json b/coverage-summary.json index c745711b35f0..5b3ff48c8394 100644 --- a/coverage-summary.json +++ b/coverage-summary.json @@ -1,717 +1,861 @@ -{"total": {"lines":{"total":29011,"covered":15792,"skipped":0,"pct":54.43},"statements":{"total":32408,"covered":17454,"skipped":0,"pct":53.86},"functions":{"total":7082,"covered":2298,"skipped":0,"pct":32.45},"branches":{"total":15912,"covered":5681,"skipped":0,"pct":35.7}} -,"/Users/hetunandu/code/appsmith/app/client/src/store.ts": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":20,"covered":17,"skipped":0,"pct":85},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/actionActions.ts": {"lines":{"total":58,"covered":32,"skipped":0,"pct":55.17},"functions":{"total":29,"covered":0,"skipped":0,"pct":0},"statements":{"total":90,"covered":61,"skipped":0,"pct":67.78},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/apiPaneActions.ts": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":28,"covered":19,"skipped":0,"pct":67.86},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/applicationActions.ts": {"lines":{"total":20,"covered":12,"skipped":0,"pct":60},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":31,"covered":23,"skipped":0,"pct":74.19},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/batchActions.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/canvasSelectionActions.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/commentActions.ts": {"lines":{"total":62,"covered":48,"skipped":0,"pct":77.42},"functions":{"total":39,"covered":17,"skipped":0,"pct":43.59},"statements":{"total":122,"covered":97,"skipped":0,"pct":79.51},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/controlActions.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":13,"covered":10,"skipped":0,"pct":76.92},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/datasourceActions.ts": {"lines":{"total":40,"covered":21,"skipped":0,"pct":52.5},"functions":{"total":19,"covered":0,"skipped":0,"pct":0},"statements":{"total":60,"covered":40,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/debuggerActions.ts": {"lines":{"total":9,"covered":8,"skipped":0,"pct":88.89},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":22,"covered":17,"skipped":0,"pct":77.27},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/errorActions.ts": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/evaluationActions.ts": {"lines":{"total":14,"covered":7,"skipped":0,"pct":50},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/explorerActions.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/globalSearchActions.ts": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":22,"covered":17,"skipped":0,"pct":77.27},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/helpActions.ts": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/importActions.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/initActions.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":10,"covered":9,"skipped":0,"pct":90},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/metaActions.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/notificationActions.ts": {"lines":{"total":14,"covered":12,"skipped":0,"pct":85.71},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":34,"covered":23,"skipped":0,"pct":67.65},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/onboardingActions.ts": {"lines":{"total":21,"covered":11,"skipped":0,"pct":52.38},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":31,"covered":21,"skipped":0,"pct":67.74},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/orgActions.ts": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":28,"covered":19,"skipped":0,"pct":67.86},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/pageActions.tsx": {"lines":{"total":45,"covered":32,"skipped":0,"pct":71.11},"functions":{"total":22,"covered":8,"skipped":0,"pct":36.36},"statements":{"total":71,"covered":55,"skipped":0,"pct":77.46},"branches":{"total":4,"covered":1,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/pluginActions.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/propertyPaneActions.ts": {"lines":{"total":5,"covered":4,"skipped":0,"pct":80},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/providerActions.ts": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/queryPaneActions.ts": {"lines":{"total":7,"covered":4,"skipped":0,"pct":57.14},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":7,"skipped":0,"pct":70},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/themeActions.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/tourActions.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/userActions.ts": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":44,"covered":30,"skipped":0,"pct":68.18},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/websocketActions.ts": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/widgetActions.tsx": {"lines":{"total":34,"covered":26,"skipped":0,"pct":76.47},"functions":{"total":15,"covered":7,"skipped":0,"pct":46.67},"statements":{"total":50,"covered":41,"skipped":0,"pct":82},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/widgetSelectionActions.ts": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":8,"covered":8,"skipped":0,"pct":100},"statements":{"total":27,"covered":27,"skipped":0,"pct":100},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/actions/widgetSidebarActions.tsx": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/ActionAPI.tsx": {"lines":{"total":32,"covered":17,"skipped":0,"pct":53.13},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":33,"covered":18,"skipped":0,"pct":54.55},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/Api.ts": {"lines":{"total":27,"covered":23,"skipped":0,"pct":85.19},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":27,"covered":23,"skipped":0,"pct":85.19},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/ApiUtils.ts": {"lines":{"total":49,"covered":36,"skipped":0,"pct":73.47},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":53,"covered":40,"skipped":0,"pct":75.47},"branches":{"total":35,"covered":22,"skipped":0,"pct":62.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/ApplicationApi.tsx": {"lines":{"total":41,"covered":23,"skipped":0,"pct":56.1},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":45,"covered":24,"skipped":0,"pct":53.33},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/CloudServicesApi.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":4,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/CollectionApi.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/CommentsAPI.tsx": {"lines":{"total":27,"covered":21,"skipped":0,"pct":77.78},"functions":{"total":11,"covered":5,"skipped":0,"pct":45.45},"statements":{"total":28,"covered":22,"skipped":0,"pct":78.57},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/DatasourcesApi.ts": {"lines":{"total":23,"covered":14,"skipped":0,"pct":60.87},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":24,"covered":15,"skipped":0,"pct":62.5},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/ImportApi.ts": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/NotificationsAPI.tsx": {"lines":{"total":16,"covered":12,"skipped":0,"pct":75},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":17,"covered":13,"skipped":0,"pct":76.47},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/OrgApi.ts": {"lines":{"total":31,"covered":18,"skipped":0,"pct":58.06},"functions":{"total":12,"covered":2,"skipped":0,"pct":16.67},"statements":{"total":32,"covered":19,"skipped":0,"pct":59.38},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/PageApi.tsx": {"lines":{"total":38,"covered":27,"skipped":0,"pct":71.05},"functions":{"total":14,"covered":3,"skipped":0,"pct":21.43},"statements":{"total":40,"covered":28,"skipped":0,"pct":70},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/PluginApi.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":10,"covered":8,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/ProvidersApi.ts": {"lines":{"total":33,"covered":18,"skipped":0,"pct":54.55},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":35,"covered":20,"skipped":0,"pct":57.14},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/SaasApi.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":10,"covered":8,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/UserApi.tsx": {"lines":{"total":47,"covered":30,"skipped":0,"pct":63.83},"functions":{"total":15,"covered":1,"skipped":0,"pct":6.67},"statements":{"total":48,"covered":31,"skipped":0,"pct":64.58},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/api/WidgetSidebarApi.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/utils.ts": {"lines":{"total":32,"covered":29,"skipped":0,"pct":90.63},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":39,"covered":36,"skipped":0,"pct":92.31},"branches":{"total":12,"covered":3,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/AppComments/AppCommentsFilterPopover.tsx": {"lines":{"total":36,"covered":17,"skipped":0,"pct":47.22},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":17,"skipped":0,"pct":44.74},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/CommentCard/CommentCard.tsx": {"lines":{"total":154,"covered":114,"skipped":0,"pct":74.03},"functions":{"total":41,"covered":18,"skipped":0,"pct":43.9},"statements":{"total":166,"covered":122,"skipped":0,"pct":73.49},"branches":{"total":113,"covered":74,"skipped":0,"pct":65.49}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/CommentCard/CommentContextMenu.tsx": {"lines":{"total":46,"covered":37,"skipped":0,"pct":80.43},"functions":{"total":12,"covered":4,"skipped":0,"pct":33.33},"statements":{"total":49,"covered":39,"skipped":0,"pct":79.59},"branches":{"total":22,"covered":18,"skipped":0,"pct":81.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/CommentCard/ResolveCommentButton.tsx": {"lines":{"total":24,"covered":22,"skipped":0,"pct":91.67},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":26,"covered":24,"skipped":0,"pct":92.31},"branches":{"total":10,"covered":7,"skipped":0,"pct":70}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/CommentThread/CommentThread.tsx": {"lines":{"total":49,"covered":47,"skipped":0,"pct":95.92},"functions":{"total":11,"covered":9,"skipped":0,"pct":81.82},"statements":{"total":53,"covered":49,"skipped":0,"pct":92.45},"branches":{"total":93,"covered":58,"skipped":0,"pct":62.37}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/CommentThread/ScrollToLatest.tsx": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/AddCommentInput.tsx": {"lines":{"total":91,"covered":66,"skipped":0,"pct":72.53},"functions":{"total":19,"covered":12,"skipped":0,"pct":63.16},"statements":{"total":105,"covered":76,"skipped":0,"pct":72.38},"branches":{"total":40,"covered":17,"skipped":0,"pct":42.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/Comments.tsx": {"lines":{"total":30,"covered":30,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":33,"covered":32,"skipped":0,"pct":96.97},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/InlineCommentPin.tsx": {"lines":{"total":56,"covered":48,"skipped":0,"pct":85.71},"functions":{"total":14,"covered":12,"skipped":0,"pct":85.71},"statements":{"total":60,"covered":51,"skipped":0,"pct":85},"branches":{"total":42,"covered":25,"skipped":0,"pct":59.52}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/OverlayCommentsWrapper.tsx": {"lines":{"total":26,"covered":26,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":29,"covered":28,"skipped":0,"pct":96.55},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/StyledComponents.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/UnpublishedCommentThread.tsx": {"lines":{"total":25,"covered":22,"skipped":0,"pct":88},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":27,"covered":24,"skipped":0,"pct":88.89},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/inlineComments/useOrgUsers.tsx": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/tests/setMockPages.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/comments/tour/commentsTourSteps.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/AppIcon.tsx": {"lines":{"total":276,"covered":88,"skipped":0,"pct":31.88},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":277,"covered":88,"skipped":0,"pct":31.77},"branches":{"total":91,"covered":2,"skipped":0,"pct":2.2}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Button.tsx": {"lines":{"total":126,"covered":117,"skipped":0,"pct":92.86},"functions":{"total":43,"covered":40,"skipped":0,"pct":93.02},"statements":{"total":128,"covered":118,"skipped":0,"pct":92.19},"branches":{"total":93,"covered":74,"skipped":0,"pct":79.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/ButtonTabComponent.tsx": {"lines":{"total":14,"covered":6,"skipped":0,"pct":42.86},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":6,"skipped":0,"pct":42.86},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Callout.tsx": {"lines":{"total":23,"covered":10,"skipped":0,"pct":43.48},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":10,"skipped":0,"pct":43.48},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Checkbox.tsx": {"lines":{"total":33,"covered":10,"skipped":0,"pct":30.3},"functions":{"total":16,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":10,"skipped":0,"pct":27.03},"branches":{"total":32,"covered":6,"skipped":0,"pct":18.75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/ColorPickerComponent.tsx": {"lines":{"total":35,"covered":14,"skipped":0,"pct":40},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":14,"skipped":0,"pct":37.84},"branches":{"total":22,"covered":14,"skipped":0,"pct":63.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/CopyToClipBoard.tsx": {"lines":{"total":21,"covered":7,"skipped":0,"pct":33.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":7,"skipped":0,"pct":30.43},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/DatePickerComponent.tsx": {"lines":{"total":17,"covered":8,"skipped":0,"pct":47.06},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/DialogComponent.tsx": {"lines":{"total":34,"covered":31,"skipped":0,"pct":91.18},"functions":{"total":21,"covered":19,"skipped":0,"pct":90.48},"statements":{"total":36,"covered":33,"skipped":0,"pct":91.67},"branches":{"total":18,"covered":13,"skipped":0,"pct":72.22}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/DraggableList.tsx": {"lines":{"total":47,"covered":12,"skipped":0,"pct":25.53},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":62,"covered":12,"skipped":0,"pct":19.35},"branches":{"total":14,"covered":2,"skipped":0,"pct":14.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/DraggableListComponent.tsx": {"lines":{"total":23,"covered":7,"skipped":0,"pct":30.43},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":29,"covered":9,"skipped":0,"pct":31.03},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Dropdown.tsx": {"lines":{"total":72,"covered":44,"skipped":0,"pct":61.11},"functions":{"total":38,"covered":14,"skipped":0,"pct":36.84},"statements":{"total":78,"covered":50,"skipped":0,"pct":64.1},"branches":{"total":93,"covered":62,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/EditableText.tsx": {"lines":{"total":102,"covered":68,"skipped":0,"pct":66.67},"functions":{"total":34,"covered":28,"skipped":0,"pct":82.35},"statements":{"total":115,"covered":80,"skipped":0,"pct":69.57},"branches":{"total":100,"covered":42,"skipped":0,"pct":42}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/EmojiPicker.tsx": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":21,"covered":18,"skipped":0,"pct":85.71},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/EmojiReactions.tsx": {"lines":{"total":50,"covered":20,"skipped":0,"pct":40},"functions":{"total":17,"covered":2,"skipped":0,"pct":11.76},"statements":{"total":58,"covered":23,"skipped":0,"pct":39.66},"branches":{"total":54,"covered":15,"skipped":0,"pct":27.78}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/FilePicker.tsx": {"lines":{"total":156,"covered":70,"skipped":0,"pct":44.87},"functions":{"total":46,"covered":27,"skipped":0,"pct":58.7},"statements":{"total":166,"covered":80,"skipped":0,"pct":48.19},"branches":{"total":84,"covered":13,"skipped":0,"pct":15.48}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/GifPlayerComponent.tsx": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":9,"skipped":0,"pct":47.37},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Icon.tsx": {"lines":{"total":280,"covered":157,"skipped":0,"pct":56.07},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":281,"covered":158,"skipped":0,"pct":56.23},"branches":{"total":119,"covered":49,"skipped":0,"pct":41.18}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/IconTabsComponent.tsx": {"lines":{"total":15,"covered":6,"skipped":0,"pct":40},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":6,"skipped":0,"pct":33.33},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/MentionsInput.tsx": {"lines":{"total":69,"covered":44,"skipped":0,"pct":63.77},"functions":{"total":22,"covered":6,"skipped":0,"pct":27.27},"statements":{"total":76,"covered":50,"skipped":0,"pct":65.79},"branches":{"total":48,"covered":19,"skipped":0,"pct":39.58}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Menu.tsx": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":12,"covered":7,"skipped":0,"pct":58.33},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/MenuDivider.tsx": {"lines":{"total":6,"covered":3,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":3,"skipped":0,"pct":50},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/MenuItem.tsx": {"lines":{"total":23,"covered":14,"skipped":0,"pct":60.87},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":14,"skipped":0,"pct":60.87},"branches":{"total":32,"covered":4,"skipped":0,"pct":12.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/MultiSwitch.tsx": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/MultiselectDropdown.tsx": {"lines":{"total":78,"covered":15,"skipped":0,"pct":19.23},"functions":{"total":40,"covered":0,"skipped":0,"pct":0},"statements":{"total":83,"covered":15,"skipped":0,"pct":18.07},"branches":{"total":84,"covered":14,"skipped":0,"pct":16.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Radio.tsx": {"lines":{"total":38,"covered":5,"skipped":0,"pct":13.16},"functions":{"total":27,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":5,"skipped":0,"pct":12.5},"branches":{"total":40,"covered":4,"skipped":0,"pct":10}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/RectangularSwitcher.tsx": {"lines":{"total":26,"covered":8,"skipped":0,"pct":30.77},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":30,"covered":8,"skipped":0,"pct":26.67},"branches":{"total":20,"covered":6,"skipped":0,"pct":30}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/ScrollIndicator.tsx": {"lines":{"total":42,"covered":34,"skipped":0,"pct":80.95},"functions":{"total":15,"covered":13,"skipped":0,"pct":86.67},"statements":{"total":46,"covered":38,"skipped":0,"pct":82.61},"branches":{"total":36,"covered":19,"skipped":0,"pct":52.78}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Spinner.tsx": {"lines":{"total":15,"covered":10,"skipped":0,"pct":66.67},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":10,"skipped":0,"pct":66.67},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/StepComponent.tsx": {"lines":{"total":22,"covered":9,"skipped":0,"pct":40.91},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":9,"skipped":0,"pct":40.91},"branches":{"total":12,"covered":8,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Switch.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Tabs.tsx": {"lines":{"total":48,"covered":11,"skipped":0,"pct":22.92},"functions":{"total":37,"covered":0,"skipped":0,"pct":0},"statements":{"total":48,"covered":11,"skipped":0,"pct":22.92},"branches":{"total":44,"covered":8,"skipped":0,"pct":18.18}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/TagInputComponent.tsx": {"lines":{"total":57,"covered":7,"skipped":0,"pct":12.28},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":61,"covered":7,"skipped":0,"pct":11.48},"branches":{"total":38,"covered":2,"skipped":0,"pct":5.26}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Text.tsx": {"lines":{"total":42,"covered":42,"skipped":0,"pct":100},"functions":{"total":14,"covered":14,"skipped":0,"pct":100},"statements":{"total":43,"covered":43,"skipped":0,"pct":100},"branches":{"total":28,"covered":21,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/TextInput.tsx": {"lines":{"total":67,"covered":45,"skipped":0,"pct":67.16},"functions":{"total":18,"covered":15,"skipped":0,"pct":83.33},"statements":{"total":70,"covered":48,"skipped":0,"pct":68.57},"branches":{"total":45,"covered":18,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Toast.tsx": {"lines":{"total":46,"covered":21,"skipped":0,"pct":45.65},"functions":{"total":17,"covered":1,"skipped":0,"pct":5.88},"statements":{"total":46,"covered":21,"skipped":0,"pct":45.65},"branches":{"total":54,"covered":18,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Toggle.tsx": {"lines":{"total":22,"covered":6,"skipped":0,"pct":27.27},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":24,"covered":6,"skipped":0,"pct":25},"branches":{"total":30,"covered":2,"skipped":0,"pct":6.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/Tooltip.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/TreeDropdown.tsx": {"lines":{"total":54,"covered":28,"skipped":0,"pct":51.85},"functions":{"total":23,"covered":7,"skipped":0,"pct":30.43},"statements":{"total":56,"covered":30,"skipped":0,"pct":53.57},"branches":{"total":34,"covered":20,"skipped":0,"pct":58.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/common.tsx": {"lines":{"total":41,"covered":27,"skipped":0,"pct":65.85},"functions":{"total":7,"covered":4,"skipped":0,"pct":57.14},"statements":{"total":46,"covered":32,"skipped":0,"pct":69.57},"branches":{"total":13,"covered":7,"skipped":0,"pct":53.85}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/ads/tour/TourTooltipWrapper.tsx": {"lines":{"total":31,"covered":30,"skipped":0,"pct":96.77},"functions":{"total":6,"covered":5,"skipped":0,"pct":83.33},"statements":{"total":31,"covered":30,"skipped":0,"pct":96.77},"branches":{"total":32,"covered":22,"skipped":0,"pct":68.75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/CenteredWrapper.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/ContainerComponent.tsx": {"lines":{"total":30,"covered":28,"skipped":0,"pct":93.33},"functions":{"total":12,"covered":12,"skipped":0,"pct":100},"statements":{"total":30,"covered":28,"skipped":0,"pct":93.33},"branches":{"total":44,"covered":26,"skipped":0,"pct":59.09}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/CopyToClipBoard.tsx": {"lines":{"total":21,"covered":7,"skipped":0,"pct":33.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":7,"skipped":0,"pct":30.43},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/Dropdown.tsx": {"lines":{"total":22,"covered":7,"skipped":0,"pct":31.82},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":7,"skipped":0,"pct":31.82},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/FilePickerComponent.tsx": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":20,"covered":11,"skipped":0,"pct":55},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/IconComponent.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/ImageComponent.tsx": {"lines":{"total":45,"covered":12,"skipped":0,"pct":26.67},"functions":{"total":16,"covered":2,"skipped":0,"pct":12.5},"statements":{"total":49,"covered":13,"skipped":0,"pct":26.53},"branches":{"total":43,"covered":6,"skipped":0,"pct":13.95}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/MapComponent.tsx": {"lines":{"total":41,"covered":13,"skipped":0,"pct":31.71},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":43,"covered":13,"skipped":0,"pct":30.23},"branches":{"total":33,"covered":8,"skipped":0,"pct":24.24}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/PickMyLocation.tsx": {"lines":{"total":21,"covered":8,"skipped":0,"pct":38.1},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":24,"covered":9,"skipped":0,"pct":37.5},"branches":{"total":16,"covered":4,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/PopoverVideo.tsx": {"lines":{"total":11,"covered":9,"skipped":0,"pct":81.82},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":9,"skipped":0,"pct":81.82},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/PositionedContainer.tsx": {"lines":{"total":21,"covered":21,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":14,"covered":11,"skipped":0,"pct":78.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/StyledHeader.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TabbedView.tsx": {"lines":{"total":14,"covered":6,"skipped":0,"pct":42.86},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":6,"skipped":0,"pct":42.86},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TabsComponent.tsx": {"lines":{"total":36,"covered":36,"skipped":0,"pct":100},"functions":{"total":18,"covered":18,"skipped":0,"pct":100},"statements":{"total":37,"covered":37,"skipped":0,"pct":100},"branches":{"total":34,"covered":29,"skipped":0,"pct":85.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TextInputComponent.tsx": {"lines":{"total":35,"covered":10,"skipped":0,"pct":28.57},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":40,"covered":12,"skipped":0,"pct":30},"branches":{"total":27,"covered":4,"skipped":0,"pct":14.81}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/VideoComponent.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/AutoToolTipComponent.tsx": {"lines":{"total":29,"covered":9,"skipped":0,"pct":31.03},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":9,"skipped":0,"pct":27.27},"branches":{"total":28,"covered":4,"skipped":0,"pct":14.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/CommonUtilities.ts": {"lines":{"total":32,"covered":28,"skipped":0,"pct":87.5},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":35,"covered":31,"skipped":0,"pct":88.57},"branches":{"total":47,"covered":23,"skipped":0,"pct":48.94}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/Constants.ts": {"lines":{"total":59,"covered":50,"skipped":0,"pct":84.75},"functions":{"total":22,"covered":20,"skipped":0,"pct":90.91},"statements":{"total":59,"covered":50,"skipped":0,"pct":84.75},"branches":{"total":32,"covered":23,"skipped":0,"pct":71.88}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableHelpers.ts": {"lines":{"total":23,"covered":23,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":28,"covered":28,"skipped":0,"pct":100},"branches":{"total":10,"covered":8,"skipped":0,"pct":80}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx": {"lines":{"total":86,"covered":31,"skipped":0,"pct":36.05},"functions":{"total":55,"covered":0,"skipped":0,"pct":0},"statements":{"total":86,"covered":31,"skipped":0,"pct":36.05},"branches":{"total":268,"covered":44,"skipped":0,"pct":16.42}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableUtilities.tsx": {"lines":{"total":104,"covered":38,"skipped":0,"pct":36.54},"functions":{"total":32,"covered":3,"skipped":0,"pct":9.38},"statements":{"total":114,"covered":44,"skipped":0,"pct":38.6},"branches":{"total":73,"covered":14,"skipped":0,"pct":19.18}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/header/DeployLinkButton.tsx": {"lines":{"total":16,"covered":11,"skipped":0,"pct":68.75},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":18,"covered":13,"skipped":0,"pct":72.22},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/header/ThreeDotsLoading.tsx": {"lines":{"total":5,"covered":4,"skipped":0,"pct":80},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":4,"skipped":0,"pct":80},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/help/CollapsibleHelp.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/appsmith/help/DocumentationSearch.tsx": {"lines":{"total":72,"covered":45,"skipped":0,"pct":62.5},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":77,"covered":46,"skipped":0,"pct":59.74},"branches":{"total":72,"covered":23,"skipped":0,"pct":31.94}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/ButtonComponent.tsx": {"lines":{"total":71,"covered":44,"skipped":0,"pct":61.97},"functions":{"total":21,"covered":14,"skipped":0,"pct":66.67},"statements":{"total":77,"covered":46,"skipped":0,"pct":59.74},"branches":{"total":57,"covered":30,"skipped":0,"pct":52.63}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/CheckboxComponent.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":17,"covered":16,"skipped":0,"pct":94.12},"branches":{"total":15,"covered":10,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/DatePickerComponent.tsx": {"lines":{"total":69,"covered":19,"skipped":0,"pct":27.54},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":71,"covered":20,"skipped":0,"pct":28.17},"branches":{"total":63,"covered":2,"skipped":0,"pct":3.17}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/DatePickerComponent2.tsx": {"lines":{"total":67,"covered":19,"skipped":0,"pct":28.36},"functions":{"total":17,"covered":1,"skipped":0,"pct":5.88},"statements":{"total":69,"covered":20,"skipped":0,"pct":28.99},"branches":{"total":61,"covered":2,"skipped":0,"pct":3.28}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/DividerComponent.tsx": {"lines":{"total":42,"covered":29,"skipped":0,"pct":69.05},"functions":{"total":12,"covered":5,"skipped":0,"pct":41.67},"statements":{"total":48,"covered":31,"skipped":0,"pct":64.58},"branches":{"total":71,"covered":30,"skipped":0,"pct":42.25}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/DropdownComponent.tsx": {"lines":{"total":78,"covered":25,"skipped":0,"pct":32.05},"functions":{"total":31,"covered":1,"skipped":0,"pct":3.23},"statements":{"total":81,"covered":26,"skipped":0,"pct":32.1},"branches":{"total":53,"covered":12,"skipped":0,"pct":22.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/IframeComponent.tsx": {"lines":{"total":15,"covered":5,"skipped":0,"pct":33.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":5,"skipped":0,"pct":33.33},"branches":{"total":10,"covered":2,"skipped":0,"pct":20}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/InputComponent.tsx": {"lines":{"total":69,"covered":43,"skipped":0,"pct":62.32},"functions":{"total":29,"covered":15,"skipped":0,"pct":51.72},"statements":{"total":73,"covered":46,"skipped":0,"pct":63.01},"branches":{"total":62,"covered":26,"skipped":0,"pct":41.94}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/ModalComponent.tsx": {"lines":{"total":28,"covered":9,"skipped":0,"pct":32.14},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":9,"skipped":0,"pct":31.03},"branches":{"total":26,"covered":4,"skipped":0,"pct":15.38}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/RadioGroupComponent.tsx": {"lines":{"total":15,"covered":11,"skipped":0,"pct":73.33},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":18,"covered":12,"skipped":0,"pct":66.67},"branches":{"total":13,"covered":4,"skipped":0,"pct":30.77}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/RateComponent.tsx": {"lines":{"total":30,"covered":11,"skipped":0,"pct":36.67},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":34,"covered":11,"skipped":0,"pct":32.35},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/SwitchComponent.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":8,"covered":5,"skipped":0,"pct":62.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/designSystems/blueprint/TextComponent.tsx": {"lines":{"total":31,"covered":13,"skipped":0,"pct":41.94},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":32,"covered":14,"skipped":0,"pct":43.75},"branches":{"total":60,"covered":6,"skipped":0,"pct":10}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ActionNameEditor.tsx": {"lines":{"total":63,"covered":18,"skipped":0,"pct":28.57},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":66,"covered":18,"skipped":0,"pct":27.27},"branches":{"total":59,"covered":2,"skipped":0,"pct":3.39}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ApiResponseView.tsx": {"lines":{"total":70,"covered":39,"skipped":0,"pct":55.71},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":72,"covered":39,"skipped":0,"pct":54.17},"branches":{"total":64,"covered":24,"skipped":0,"pct":37.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Button.tsx": {"lines":{"total":27,"covered":12,"skipped":0,"pct":44.44},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":13,"skipped":0,"pct":44.83},"branches":{"total":43,"covered":8,"skipped":0,"pct":18.6}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CloseEditor.tsx": {"lines":{"total":22,"covered":11,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":11,"skipped":0,"pct":50},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Divider.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/DragLayerComponent.tsx": {"lines":{"total":50,"covered":40,"skipped":0,"pct":80},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":54,"covered":44,"skipped":0,"pct":81.48},"branches":{"total":50,"covered":19,"skipped":0,"pct":38}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/DraggableComponent.tsx": {"lines":{"total":53,"covered":44,"skipped":0,"pct":83.02},"functions":{"total":15,"covered":11,"skipped":0,"pct":73.33},"statements":{"total":59,"covered":49,"skipped":0,"pct":83.05},"branches":{"total":39,"covered":24,"skipped":0,"pct":61.54}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/DropTargetComponent.tsx": {"lines":{"total":87,"covered":52,"skipped":0,"pct":59.77},"functions":{"total":16,"covered":8,"skipped":0,"pct":50},"statements":{"total":98,"covered":63,"skipped":0,"pct":64.29},"branches":{"total":73,"covered":29,"skipped":0,"pct":39.73}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/DropTargetUtils.ts": {"lines":{"total":9,"covered":2,"skipped":0,"pct":22.22},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":3,"skipped":0,"pct":30},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Dropzone.tsx": {"lines":{"total":33,"covered":14,"skipped":0,"pct":42.42},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":43,"covered":14,"skipped":0,"pct":32.56},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/EditableText.tsx": {"lines":{"total":58,"covered":17,"skipped":0,"pct":29.31},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":63,"covered":17,"skipped":0,"pct":26.98},"branches":{"total":47,"covered":8,"skipped":0,"pct":17.02}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/EditorContextProvider.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ErrorBoundry.tsx": {"lines":{"total":19,"covered":14,"skipped":0,"pct":73.68},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":21,"covered":16,"skipped":0,"pct":76.19},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ErrorTooltip.tsx": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":8,"covered":8,"skipped":0,"pct":100},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/FormLabel.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/FormRow.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/HelperTooltip.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/LoadingOverlayScreen.tsx": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":3,"skipped":0,"pct":60},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/PaneWrapper.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/PreventInteractionsOverlay.tsx": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ReadOnlyEditor.tsx": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ResizableComponent.tsx": {"lines":{"total":89,"covered":52,"skipped":0,"pct":58.43},"functions":{"total":11,"covered":7,"skipped":0,"pct":63.64},"statements":{"total":91,"covered":54,"skipped":0,"pct":59.34},"branches":{"total":61,"covered":14,"skipped":0,"pct":22.95}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ResizableUtils.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":10,"skipped":0,"pct":66.67},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ResizeStyledComponents.tsx": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":19,"covered":19,"skipped":0,"pct":100},"branches":{"total":28,"covered":28,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Sidebar.tsx": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":19,"covered":19,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Spinner.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/StoreAsDatasource.tsx": {"lines":{"total":16,"covered":10,"skipped":0,"pct":62.5},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":10,"skipped":0,"pct":62.5},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ActionCreator/Fields.tsx": {"lines":{"total":263,"covered":74,"skipped":0,"pct":28.14},"functions":{"total":65,"covered":5,"skipped":0,"pct":7.69},"statements":{"total":269,"covered":78,"skipped":0,"pct":29},"branches":{"total":138,"covered":36,"skipped":0,"pct":26.09}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/ActionCreator/index.tsx": {"lines":{"total":121,"covered":58,"skipped":0,"pct":47.93},"functions":{"total":23,"covered":13,"skipped":0,"pct":56.52},"statements":{"total":123,"covered":60,"skipped":0,"pct":48.78},"branches":{"total":70,"covered":8,"skipped":0,"pct":11.43}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/BindingPrompt.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":16,"covered":12,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/BindingPromptHelper.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/EditorConfig.ts": {"lines":{"total":22,"covered":22,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":10,"covered":10,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/EvaluatedValuePopup.tsx": {"lines":{"total":84,"covered":55,"skipped":0,"pct":65.48},"functions":{"total":28,"covered":12,"skipped":0,"pct":42.86},"statements":{"total":90,"covered":57,"skipped":0,"pct":63.33},"branches":{"total":64,"covered":38,"skipped":0,"pct":59.38}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/codeEditorUtils.ts": {"lines":{"total":35,"covered":35,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":39,"covered":39,"skipped":0,"pct":100},"branches":{"total":18,"covered":16,"skipped":0,"pct":88.89}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/commandsHelper.ts": {"lines":{"total":54,"covered":25,"skipped":0,"pct":46.3},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":59,"covered":26,"skipped":0,"pct":44.07},"branches":{"total":21,"covered":7,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/generateQuickCommands.tsx": {"lines":{"total":57,"covered":9,"skipped":0,"pct":15.79},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":58,"covered":10,"skipped":0,"pct":17.24},"branches":{"total":28,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/hintHelpers.ts": {"lines":{"total":22,"covered":17,"skipped":0,"pct":77.27},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":23,"covered":18,"skipped":0,"pct":78.26},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/index.tsx": {"lines":{"total":228,"covered":163,"skipped":0,"pct":71.49},"functions":{"total":38,"covered":20,"skipped":0,"pct":52.63},"statements":{"total":244,"covered":174,"skipped":0,"pct":71.31},"branches":{"total":137,"covered":63,"skipped":0,"pct":45.99}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/markHelpers.ts": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":6,"skipped":0,"pct":54.55},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/modes.ts": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":12,"covered":11,"skipped":0,"pct":91.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/CodeEditor/styledComponents.ts": {"lines":{"total":44,"covered":41,"skipped":0,"pct":93.18},"functions":{"total":25,"covered":25,"skipped":0,"pct":100},"statements":{"total":46,"covered":41,"skipped":0,"pct":89.13},"branches":{"total":74,"covered":41,"skipped":0,"pct":55.41}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/DebugCTA.tsx": {"lines":{"total":21,"covered":12,"skipped":0,"pct":57.14},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":12,"skipped":0,"pct":54.55},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerLogs.tsx": {"lines":{"total":39,"covered":15,"skipped":0,"pct":38.46},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":48,"covered":15,"skipped":0,"pct":31.25},"branches":{"total":16,"covered":4,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerMessage.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerTabs.tsx": {"lines":{"total":27,"covered":17,"skipped":0,"pct":62.96},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":30,"covered":17,"skipped":0,"pct":56.67},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/EntityDependecies.tsx": {"lines":{"total":47,"covered":16,"skipped":0,"pct":34.04},"functions":{"total":23,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":16,"skipped":0,"pct":31.37},"branches":{"total":20,"covered":8,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/EntityLink.tsx": {"lines":{"total":56,"covered":17,"skipped":0,"pct":30.36},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":58,"covered":17,"skipped":0,"pct":29.31},"branches":{"total":21,"covered":2,"skipped":0,"pct":9.52}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/Errors.tsx": {"lines":{"total":16,"covered":10,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/FilterHeader.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/LogItem.tsx": {"lines":{"total":64,"covered":23,"skipped":0,"pct":35.94},"functions":{"total":31,"covered":0,"skipped":0,"pct":0},"statements":{"total":67,"covered":24,"skipped":0,"pct":35.82},"branches":{"total":38,"covered":10,"skipped":0,"pct":26.32}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/helpers.tsx": {"lines":{"total":46,"covered":38,"skipped":0,"pct":82.61},"functions":{"total":13,"covered":5,"skipped":0,"pct":38.46},"statements":{"total":54,"covered":44,"skipped":0,"pct":81.48},"branches":{"total":20,"covered":16,"skipped":0,"pct":80}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/hooks.ts": {"lines":{"total":73,"covered":24,"skipped":0,"pct":32.88},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":84,"covered":28,"skipped":0,"pct":33.33},"branches":{"total":84,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/index.tsx": {"lines":{"total":35,"covered":31,"skipped":0,"pct":88.57},"functions":{"total":12,"covered":11,"skipped":0,"pct":91.67},"statements":{"total":35,"covered":31,"skipped":0,"pct":88.57},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Debugger/Resizer/index.tsx": {"lines":{"total":36,"covered":6,"skipped":0,"pct":16.67},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":6,"skipped":0,"pct":15},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/ActionLink.tsx": {"lines":{"total":16,"covered":8,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":8,"skipped":0,"pct":50},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/AlgoliaSearchWrapper.tsx": {"lines":{"total":14,"covered":8,"skipped":0,"pct":57.14},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/Description.tsx": {"lines":{"total":65,"covered":13,"skipped":0,"pct":20},"functions":{"total":30,"covered":0,"skipped":0,"pct":0},"statements":{"total":68,"covered":13,"skipped":0,"pct":19.12},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/Footer.tsx": {"lines":{"total":14,"covered":5,"skipped":0,"pct":35.71},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":5,"skipped":0,"pct":35.71},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/GlobalSearchContext.tsx": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":3,"covered":3,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/GlobalSearchHotKeys.tsx": {"lines":{"total":18,"covered":14,"skipped":0,"pct":77.78},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":26,"covered":17,"skipped":0,"pct":65.38},"branches":{"total":7,"covered":3,"skipped":0,"pct":42.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/HelpBar.tsx": {"lines":{"total":24,"covered":22,"skipped":0,"pct":91.67},"functions":{"total":10,"covered":9,"skipped":0,"pct":90},"statements":{"total":26,"covered":24,"skipped":0,"pct":92.31},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/Highlight.tsx": {"lines":{"total":15,"covered":2,"skipped":0,"pct":13.33},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":2,"skipped":0,"pct":11.76},"branches":{"total":18,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/ResultsNotFound.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchBox.tsx": {"lines":{"total":34,"covered":12,"skipped":0,"pct":35.29},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":41,"covered":12,"skipped":0,"pct":29.27},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchModal.tsx": {"lines":{"total":9,"covered":8,"skipped":0,"pct":88.89},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchResults.tsx": {"lines":{"total":103,"covered":29,"skipped":0,"pct":28.16},"functions":{"total":37,"covered":0,"skipped":0,"pct":0},"statements":{"total":106,"covered":29,"skipped":0,"pct":27.36},"branches":{"total":71,"covered":18,"skipped":0,"pct":25.35}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/SetSearchResults.tsx": {"lines":{"total":12,"covered":5,"skipped":0,"pct":41.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":5,"skipped":0,"pct":38.46},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/githubHelper.ts": {"lines":{"total":13,"covered":6,"skipped":0,"pct":46.15},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/index.tsx": {"lines":{"total":186,"covered":110,"skipped":0,"pct":59.14},"functions":{"total":43,"covered":17,"skipped":0,"pct":39.53},"statements":{"total":205,"covered":120,"skipped":0,"pct":58.54},"branches":{"total":160,"covered":23,"skipped":0,"pct":14.38}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/parseDocumentationContent.ts": {"lines":{"total":88,"covered":70,"skipped":0,"pct":79.55},"functions":{"total":13,"covered":12,"skipped":0,"pct":92.31},"statements":{"total":91,"covered":72,"skipped":0,"pct":79.12},"branches":{"total":86,"covered":37,"skipped":0,"pct":43.02}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/useRecentEntities.tsx": {"lines":{"total":31,"covered":17,"skipped":0,"pct":54.84},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":33,"covered":17,"skipped":0,"pct":51.52},"branches":{"total":26,"covered":1,"skipped":0,"pct":3.85}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/GlobalSearch/utils.tsx": {"lines":{"total":50,"covered":34,"skipped":0,"pct":68},"functions":{"total":10,"covered":7,"skipped":0,"pct":70},"statements":{"total":64,"covered":44,"skipped":0,"pct":68.75},"branches":{"total":59,"covered":12,"skipped":0,"pct":20.34}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/HighlightedCode/index.tsx": {"lines":{"total":19,"covered":12,"skipped":0,"pct":63.16},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":19,"covered":12,"skipped":0,"pct":63.16},"branches":{"total":12,"covered":4,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/HighlightedCode/themes.ts": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Onboarding/Boxed.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":12,"covered":9,"skipped":0,"pct":75},"branches":{"total":7,"covered":2,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Onboarding/EndTour.tsx": {"lines":{"total":11,"covered":7,"skipped":0,"pct":63.64},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":7,"skipped":0,"pct":63.64},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Onboarding/Helper.tsx": {"lines":{"total":61,"covered":42,"skipped":0,"pct":68.85},"functions":{"total":17,"covered":6,"skipped":0,"pct":35.29},"statements":{"total":65,"covered":46,"skipped":0,"pct":70.77},"branches":{"total":103,"covered":36,"skipped":0,"pct":34.95}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/Onboarding/Indicator.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":20,"covered":5,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/WidgetNameComponent/SettingsControl.tsx": {"lines":{"total":34,"covered":32,"skipped":0,"pct":94.12},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":34,"covered":32,"skipped":0,"pct":94.12},"branches":{"total":21,"covered":18,"skipped":0,"pct":85.71}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/WidgetNameComponent/index.tsx": {"lines":{"total":47,"covered":38,"skipped":0,"pct":80.85},"functions":{"total":10,"covered":9,"skipped":0,"pct":90},"statements":{"total":49,"covered":40,"skipped":0,"pct":81.63},"branches":{"total":38,"covered":26,"skipped":0,"pct":68.42}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/CredentialsTooltip.tsx": {"lines":{"total":10,"covered":9,"skipped":0,"pct":90},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":9,"skipped":0,"pct":90},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/FormDialogComponent.tsx": {"lines":{"total":21,"covered":17,"skipped":0,"pct":80.95},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":23,"covered":19,"skipped":0,"pct":82.61},"branches":{"total":5,"covered":2,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/CheckboxField.tsx": {"lines":{"total":9,"covered":5,"skipped":0,"pct":55.56},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":5,"skipped":0,"pct":55.56},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/DropdownField.tsx": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/DropdownFieldWrapper.tsx": {"lines":{"total":17,"covered":4,"skipped":0,"pct":23.53},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":4,"skipped":0,"pct":21.05},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/DropdownWrapper.tsx": {"lines":{"total":12,"covered":3,"skipped":0,"pct":25},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":3,"skipped":0,"pct":21.43},"branches":{"total":9,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/DynamicTextField.tsx": {"lines":{"total":10,"covered":10,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/EmbeddedDatasourcePathField.tsx": {"lines":{"total":115,"covered":36,"skipped":0,"pct":31.3},"functions":{"total":25,"covered":1,"skipped":0,"pct":4},"statements":{"total":126,"covered":37,"skipped":0,"pct":29.37},"branches":{"total":75,"covered":2,"skipped":0,"pct":2.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/KeyValueFieldArray.tsx": {"lines":{"total":43,"covered":19,"skipped":0,"pct":44.19},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":44,"covered":19,"skipped":0,"pct":43.18},"branches":{"total":49,"covered":12,"skipped":0,"pct":24.49}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/NumberField.tsx": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":13,"covered":8,"skipped":0,"pct":61.54},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/RadioGroupField.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/RadioGroupWrapper.tsx": {"lines":{"total":17,"covered":3,"skipped":0,"pct":17.65},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":3,"skipped":0,"pct":15.79},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/RequestDropdownField.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/SelectField.tsx": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":6,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/TagListField.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/editorComponents/form/fields/TextField.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/BaseControl.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/CheckboxControl.tsx": {"lines":{"total":13,"covered":10,"skipped":0,"pct":76.92},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":17,"covered":11,"skipped":0,"pct":64.71},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/DropDownControl.tsx": {"lines":{"total":28,"covered":16,"skipped":0,"pct":57.14},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":37,"covered":17,"skipped":0,"pct":45.95},"branches":{"total":23,"covered":4,"skipped":0,"pct":17.39}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/DynamicInputTextControl.tsx": {"lines":{"total":24,"covered":23,"skipped":0,"pct":95.83},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":29,"covered":28,"skipped":0,"pct":96.55},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/DynamicTextFieldControl.tsx": {"lines":{"total":51,"covered":50,"skipped":0,"pct":98.04},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":54,"covered":53,"skipped":0,"pct":98.15},"branches":{"total":17,"covered":12,"skipped":0,"pct":70.59}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/FieldArrayControl.tsx": {"lines":{"total":26,"covered":13,"skipped":0,"pct":50},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":13,"skipped":0,"pct":50},"branches":{"total":13,"covered":8,"skipped":0,"pct":61.54}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/FilePickerControl.tsx": {"lines":{"total":46,"covered":21,"skipped":0,"pct":45.65},"functions":{"total":12,"covered":2,"skipped":0,"pct":16.67},"statements":{"total":52,"covered":23,"skipped":0,"pct":44.23},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/FixedKeyInputControl.tsx": {"lines":{"total":29,"covered":12,"skipped":0,"pct":41.38},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":30,"covered":13,"skipped":0,"pct":43.33},"branches":{"total":9,"covered":2,"skipped":0,"pct":22.22}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/InputNumberControl.tsx": {"lines":{"total":25,"covered":13,"skipped":0,"pct":52},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":26,"covered":14,"skipped":0,"pct":53.85},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/InputTextControl.tsx": {"lines":{"total":38,"covered":16,"skipped":0,"pct":42.11},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":39,"covered":17,"skipped":0,"pct":43.59},"branches":{"total":18,"covered":2,"skipped":0,"pct":11.11}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/KeyValueArrayControl.tsx": {"lines":{"total":57,"covered":20,"skipped":0,"pct":35.09},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":60,"covered":21,"skipped":0,"pct":35},"branches":{"total":56,"covered":4,"skipped":0,"pct":7.14}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/KeyValueInputControl.tsx": {"lines":{"total":25,"covered":15,"skipped":0,"pct":60},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":27,"covered":16,"skipped":0,"pct":59.26},"branches":{"total":12,"covered":2,"skipped":0,"pct":16.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/StyledControls.tsx": {"lines":{"total":57,"covered":22,"skipped":0,"pct":38.6},"functions":{"total":35,"covered":0,"skipped":0,"pct":0},"statements":{"total":57,"covered":22,"skipped":0,"pct":38.6},"branches":{"total":34,"covered":28,"skipped":0,"pct":82.35}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/SwitchControl.tsx": {"lines":{"total":28,"covered":18,"skipped":0,"pct":64.29},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":41,"covered":21,"skipped":0,"pct":51.22},"branches":{"total":14,"covered":6,"skipped":0,"pct":42.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/formControls/utils.ts": {"lines":{"total":71,"covered":66,"skipped":0,"pct":92.96},"functions":{"total":13,"covered":13,"skipped":0,"pct":100},"statements":{"total":80,"covered":74,"skipped":0,"pct":92.5},"branches":{"total":59,"covered":45,"skipped":0,"pct":76.27}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ActionSelectorControl.tsx": {"lines":{"total":14,"covered":12,"skipped":0,"pct":85.71},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":16,"covered":14,"skipped":0,"pct":87.5},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/BaseControl.tsx": {"lines":{"total":11,"covered":7,"skipped":0,"pct":63.64},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":12,"covered":8,"skipped":0,"pct":66.67},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ButtonTabControl.tsx": {"lines":{"total":21,"covered":10,"skipped":0,"pct":47.62},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":27,"covered":11,"skipped":0,"pct":40.74},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ChartDataControl.tsx": {"lines":{"total":58,"covered":23,"skipped":0,"pct":39.66},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":61,"covered":24,"skipped":0,"pct":39.34},"branches":{"total":37,"covered":14,"skipped":0,"pct":37.84}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/CodeEditorControl.tsx": {"lines":{"total":23,"covered":10,"skipped":0,"pct":43.48},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":28,"covered":11,"skipped":0,"pct":39.29},"branches":{"total":9,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ColorPickerControl.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ColumnActionSelectorControl.tsx": {"lines":{"total":42,"covered":18,"skipped":0,"pct":42.86},"functions":{"total":12,"covered":2,"skipped":0,"pct":16.67},"statements":{"total":47,"covered":19,"skipped":0,"pct":40.43},"branches":{"total":19,"covered":6,"skipped":0,"pct":31.58}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/ComputeTablePropertyControl.tsx": {"lines":{"total":51,"covered":17,"skipped":0,"pct":33.33},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":53,"covered":18,"skipped":0,"pct":33.96},"branches":{"total":19,"covered":4,"skipped":0,"pct":21.05}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/CustomFusionChartControl.tsx": {"lines":{"total":11,"covered":8,"skipped":0,"pct":72.73},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":16,"covered":9,"skipped":0,"pct":56.25},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/DatePickerControl.tsx": {"lines":{"total":52,"covered":14,"skipped":0,"pct":26.92},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":55,"covered":15,"skipped":0,"pct":27.27},"branches":{"total":42,"covered":2,"skipped":0,"pct":4.76}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/DropDownControl.tsx": {"lines":{"total":23,"covered":17,"skipped":0,"pct":73.91},"functions":{"total":7,"covered":4,"skipped":0,"pct":57.14},"statements":{"total":26,"covered":20,"skipped":0,"pct":76.92},"branches":{"total":11,"covered":5,"skipped":0,"pct":45.45}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/IconTabControl.tsx": {"lines":{"total":16,"covered":9,"skipped":0,"pct":56.25},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":22,"covered":10,"skipped":0,"pct":45.45},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/InputTextControl.tsx": {"lines":{"total":34,"covered":26,"skipped":0,"pct":76.47},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":36,"covered":28,"skipped":0,"pct":77.78},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/KeyValueComponent.tsx": {"lines":{"total":58,"covered":11,"skipped":0,"pct":18.97},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":62,"covered":11,"skipped":0,"pct":17.74},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/LocationSearchControl.tsx": {"lines":{"total":40,"covered":14,"skipped":0,"pct":35},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":44,"covered":15,"skipped":0,"pct":34.09},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/MultiSelectControl.tsx": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":23,"covered":11,"skipped":0,"pct":47.83},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/MultiSwitchControl.tsx": {"lines":{"total":16,"covered":11,"skipped":0,"pct":68.75},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":18,"covered":12,"skipped":0,"pct":66.67},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/OptionControl.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/PrimaryColumnsControl.tsx": {"lines":{"total":96,"covered":22,"skipped":0,"pct":22.92},"functions":{"total":25,"covered":2,"skipped":0,"pct":8},"statements":{"total":103,"covered":23,"skipped":0,"pct":22.33},"branches":{"total":55,"covered":8,"skipped":0,"pct":14.55}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/StepControl.tsx": {"lines":{"total":19,"covered":9,"skipped":0,"pct":47.37},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":26,"covered":10,"skipped":0,"pct":38.46},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/StyledControls.tsx": {"lines":{"total":77,"covered":49,"skipped":0,"pct":63.64},"functions":{"total":48,"covered":20,"skipped":0,"pct":41.67},"statements":{"total":77,"covered":49,"skipped":0,"pct":63.64},"branches":{"total":64,"covered":49,"skipped":0,"pct":76.56}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/SwitchControl.tsx": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":14,"covered":13,"skipped":0,"pct":92.86},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/TabControl.tsx": {"lines":{"total":82,"covered":22,"skipped":0,"pct":26.83},"functions":{"total":24,"covered":2,"skipped":0,"pct":8.33},"statements":{"total":86,"covered":23,"skipped":0,"pct":26.74},"branches":{"total":25,"covered":8,"skipped":0,"pct":32}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/propertyControls/index.ts": {"lines":{"total":27,"covered":22,"skipped":0,"pct":81.48},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":28,"covered":23,"skipped":0,"pct":82.14},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/utils/CollapseComponent.tsx": {"lines":{"total":13,"covered":6,"skipped":0,"pct":46.15},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":6,"skipped":0,"pct":40},"branches":{"total":10,"covered":2,"skipped":0,"pct":20}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/utils/EmptyDataState.tsx": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/utils/Skeleton.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/components/utils/TreeStructure.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/configs/index.ts": {"lines":{"total":41,"covered":40,"skipped":0,"pct":97.56},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":45,"covered":43,"skipped":0,"pct":95.56},"branches":{"total":98,"covered":82,"skipped":0,"pct":83.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/configs/types.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/ApiConstants.tsx": {"lines":{"total":23,"covered":23,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":23,"covered":23,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/ApiEditorConstants.ts": {"lines":{"total":21,"covered":21,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppConstants.ts": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":21,"covered":19,"skipped":0,"pct":90.48},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/BindingsConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/Colors.tsx": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/CommentConstants.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/CustomChartConstants.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/DatasourceEditorConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/DefaultTheme.tsx": {"lines":{"total":90,"covered":86,"skipped":0,"pct":95.56},"functions":{"total":28,"covered":24,"skipped":0,"pct":85.71},"statements":{"total":106,"covered":102,"skipped":0,"pct":96.23},"branches":{"total":38,"covered":34,"skipped":0,"pct":89.47}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/Explorer.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/FieldExpectedValue.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/Fonts.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/HelpConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/IconConstants.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":14,"covered":14,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/KeyboardShortcuts.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/Layers.tsx": {"lines":{"total":16,"covered":16,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":16,"covered":16,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/OmnibarDocumentationConstants.ts": {"lines":{"total":10,"covered":3,"skipped":0,"pct":30},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":3,"skipped":0,"pct":30},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/OnboardingConstants.tsx": {"lines":{"total":32,"covered":18,"skipped":0,"pct":56.25},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":32,"covered":18,"skipped":0,"pct":56.25},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/QueryEditorConstants.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/ReduxActionConstants.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/TourSteps.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/WebsocketConstants.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":7,"skipped":0,"pct":70},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/WidgetConstants.tsx": {"lines":{"total":61,"covered":61,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":61,"covered":61,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/WidgetValidation.ts": {"lines":{"total":36,"covered":36,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":36,"covered":36,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/forms.ts": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":19,"covered":19,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/messages.ts": {"lines":{"total":296,"covered":226,"skipped":0,"pct":76.35},"functions":{"total":214,"covered":25,"skipped":0,"pct":11.68},"statements":{"total":647,"covered":458,"skipped":0,"pct":70.79},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/providerConstants.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/routes.ts": {"lines":{"total":115,"covered":95,"skipped":0,"pct":82.61},"functions":{"total":18,"covered":12,"skipped":0,"pct":66.67},"statements":{"total":133,"covered":112,"skipped":0,"pct":84.21},"branches":{"total":92,"covered":40,"skipped":0,"pct":43.48}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/userConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/ActionConstants.tsx": {"lines":{"total":51,"covered":51,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":51,"covered":51,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiDependencyConfigs.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiEditorConfigs.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiSettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/GoogleSheetsSettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/QuerySettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Action/actionProperties.ts": {"lines":{"total":34,"covered":34,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":38,"covered":38,"skipped":0,"pct":100},"branches":{"total":22,"covered":20,"skipped":0,"pct":90.91}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Action/index.ts": {"lines":{"total":13,"covered":10,"skipped":0,"pct":76.92},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":16,"covered":11,"skipped":0,"pct":68.75},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/AppsmithConsole/index.ts": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":8,"covered":8,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/AppsmithConsole/logtype.ts": {"lines":{"total":9,"covered":9,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/DataTree/dataTreeAction.ts": {"lines":{"total":11,"covered":3,"skipped":0,"pct":27.27},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":4,"skipped":0,"pct":25},"branches":{"total":22,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/DataTree/dataTreeFactory.ts": {"lines":{"total":31,"covered":13,"skipped":0,"pct":41.94},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":32,"covered":14,"skipped":0,"pct":43.75},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/DataTree/dataTreeWidget.ts": {"lines":{"total":32,"covered":27,"skipped":0,"pct":84.38},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":33,"covered":28,"skipped":0,"pct":84.85},"branches":{"total":4,"covered":1,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Datasource/RestAPIForm.ts": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Datasource/index.ts": {"lines":{"total":10,"covered":3,"skipped":0,"pct":30},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":5,"skipped":0,"pct":31.25},"branches":{"total":8,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Tour/index.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/entities/Widget/utils.ts": {"lines":{"total":62,"covered":60,"skipped":0,"pct":96.77},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":64,"covered":62,"skipped":0,"pct":96.88},"branches":{"total":68,"covered":58,"skipped":0,"pct":85.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/globalStyles/tooltip.ts": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":5,"skipped":0,"pct":50},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/AlertIcons.tsx": {"lines":{"total":11,"covered":7,"skipped":0,"pct":63.64},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":7,"skipped":0,"pct":63.64},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/ControlIcons.tsx": {"lines":{"total":95,"covered":55,"skipped":0,"pct":57.89},"functions":{"total":46,"covered":6,"skipped":0,"pct":13.04},"statements":{"total":95,"covered":55,"skipped":0,"pct":57.89},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/FormIcons.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/HeaderIcons.tsx": {"lines":{"total":13,"covered":9,"skipped":0,"pct":69.23},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/HelpIcons.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/MenuIcons.tsx": {"lines":{"total":37,"covered":23,"skipped":0,"pct":62.16},"functions":{"total":17,"covered":3,"skipped":0,"pct":17.65},"statements":{"total":37,"covered":23,"skipped":0,"pct":62.16},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/icons/WidgetIcons.tsx": {"lines":{"total":54,"covered":35,"skipped":0,"pct":64.81},"functions":{"total":26,"covered":7,"skipped":0,"pct":26.92},"statements":{"total":54,"covered":35,"skipped":0,"pct":64.81},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/mockResponses/CommentApiMockResponse.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/mockResponses/WidgetConfigResponse.tsx": {"lines":{"total":94,"covered":11,"skipped":0,"pct":11.7},"functions":{"total":19,"covered":0,"skipped":0,"pct":0},"statements":{"total":97,"covered":11,"skipped":0,"pct":11.34},"branches":{"total":32,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/mockResponses/WidgetSidebarResponse.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/normalizers/CanvasWidgetsNormalizer.tsx": {"lines":{"total":10,"covered":10,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/AppViewer/viewer/GetAppViewerHeaderCTA.tsx": {"lines":{"total":29,"covered":27,"skipped":0,"pct":93.1},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":29,"covered":27,"skipped":0,"pct":93.1},"branches":{"total":38,"covered":32,"skipped":0,"pct":84.21}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Applications/ForkApplicationModal.tsx": {"lines":{"total":38,"covered":32,"skipped":0,"pct":84.21},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":40,"covered":34,"skipped":0,"pct":85},"branches":{"total":13,"covered":6,"skipped":0,"pct":46.15}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Applications/ForkModalStyles.ts": {"lines":{"total":22,"covered":21,"skipped":0,"pct":95.45},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":22,"covered":21,"skipped":0,"pct":95.45},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Applications/permissionHelpers.tsx": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Applications/ProductUpdatesModal/ReleaseComponent.tsx": {"lines":{"total":69,"covered":17,"skipped":0,"pct":24.64},"functions":{"total":37,"covered":1,"skipped":0,"pct":2.7},"statements":{"total":75,"covered":17,"skipped":0,"pct":22.67},"branches":{"total":34,"covered":16,"skipped":0,"pct":47.06}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/ActionSettings.tsx": {"lines":{"total":18,"covered":7,"skipped":0,"pct":38.89},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":7,"skipped":0,"pct":38.89},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Canvas.tsx": {"lines":{"total":15,"covered":12,"skipped":0,"pct":80},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":12,"skipped":0,"pct":80},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/EditableAppName.tsx": {"lines":{"total":19,"covered":14,"skipped":0,"pct":73.68},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":22,"covered":16,"skipped":0,"pct":72.73},"branches":{"total":8,"covered":3,"skipped":0,"pct":37.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/EditorHeader.tsx": {"lines":{"total":96,"covered":85,"skipped":0,"pct":88.54},"functions":{"total":26,"covered":20,"skipped":0,"pct":76.92},"statements":{"total":100,"covered":89,"skipped":0,"pct":89},"branches":{"total":45,"covered":25,"skipped":0,"pct":55.56}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/EntityNotFoundPane.tsx": {"lines":{"total":11,"covered":8,"skipped":0,"pct":72.73},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/FormControl.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":12,"covered":6,"skipped":0,"pct":50},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/GlobalHotKeys.tsx": {"lines":{"total":76,"covered":53,"skipped":0,"pct":69.74},"functions":{"total":30,"covered":18,"skipped":0,"pct":60},"statements":{"total":80,"covered":57,"skipped":0,"pct":71.25},"branches":{"total":23,"covered":9,"skipped":0,"pct":39.13}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/HelpButton.tsx": {"lines":{"total":16,"covered":15,"skipped":0,"pct":93.75},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/MainContainer.tsx": {"lines":{"total":17,"covered":17,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":17,"covered":17,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/MainContainerLayoutControl.tsx": {"lines":{"total":28,"covered":24,"skipped":0,"pct":85.71},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":28,"covered":24,"skipped":0,"pct":85.71},"branches":{"total":10,"covered":5,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Popper.tsx": {"lines":{"total":40,"covered":34,"skipped":0,"pct":85},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":40,"covered":34,"skipped":0,"pct":85},"branches":{"total":36,"covered":26,"skipped":0,"pct":72.22}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPaneHelpButton.tsx": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":20,"covered":17,"skipped":0,"pct":85},"branches":{"total":12,"covered":6,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPaneTitle.tsx": {"lines":{"total":49,"covered":40,"skipped":0,"pct":81.63},"functions":{"total":17,"covered":14,"skipped":0,"pct":82.35},"statements":{"total":53,"covered":44,"skipped":0,"pct":83.02},"branches":{"total":44,"covered":17,"skipped":0,"pct":38.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/ToggleModeButton.tsx": {"lines":{"total":101,"covered":69,"skipped":0,"pct":68.32},"functions":{"total":26,"covered":10,"skipped":0,"pct":38.46},"statements":{"total":111,"covered":78,"skipped":0,"pct":70.27},"branches":{"total":44,"covered":17,"skipped":0,"pct":38.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/WidgetCard.tsx": {"lines":{"total":33,"covered":14,"skipped":0,"pct":42.42},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":14,"skipped":0,"pct":37.84},"branches":{"total":12,"covered":6,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/WidgetSidebar.tsx": {"lines":{"total":67,"covered":24,"skipped":0,"pct":35.82},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":69,"covered":24,"skipped":0,"pct":34.78},"branches":{"total":47,"covered":10,"skipped":0,"pct":21.28}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/WidgetsEditor.tsx": {"lines":{"total":60,"covered":54,"skipped":0,"pct":90},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":63,"covered":57,"skipped":0,"pct":90.48},"branches":{"total":32,"covered":23,"skipped":0,"pct":71.88}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/WidgetsMultiSelectBox.tsx": {"lines":{"total":83,"covered":71,"skipped":0,"pct":85.54},"functions":{"total":24,"covered":19,"skipped":0,"pct":79.17},"statements":{"total":90,"covered":78,"skipped":0,"pct":86.67},"branches":{"total":36,"covered":32,"skipped":0,"pct":88.89}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/routes.tsx": {"lines":{"total":59,"covered":26,"skipped":0,"pct":44.07},"functions":{"total":15,"covered":1,"skipped":0,"pct":6.67},"statements":{"total":68,"covered":27,"skipped":0,"pct":39.71},"branches":{"total":18,"covered":4,"skipped":0,"pct":22.22}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/utils.ts": {"lines":{"total":86,"covered":38,"skipped":0,"pct":44.19},"functions":{"total":12,"covered":3,"skipped":0,"pct":25},"statements":{"total":92,"covered":39,"skipped":0,"pct":42.39},"branches":{"total":31,"covered":4,"skipped":0,"pct":12.9}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/CurlImportForm.tsx": {"lines":{"total":29,"covered":23,"skipped":0,"pct":79.31},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":32,"covered":24,"skipped":0,"pct":75},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/DatasourceList.tsx": {"lines":{"total":37,"covered":19,"skipped":0,"pct":51.35},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":41,"covered":20,"skipped":0,"pct":48.78},"branches":{"total":30,"covered":14,"skipped":0,"pct":46.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/Form.tsx": {"lines":{"total":154,"covered":62,"skipped":0,"pct":40.26},"functions":{"total":54,"covered":0,"skipped":0,"pct":0},"statements":{"total":163,"covered":62,"skipped":0,"pct":38.04},"branches":{"total":96,"covered":46,"skipped":0,"pct":47.92}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/Pagination.tsx": {"lines":{"total":51,"covered":26,"skipped":0,"pct":50.98},"functions":{"total":25,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":26,"skipped":0,"pct":50.98},"branches":{"total":32,"covered":20,"skipped":0,"pct":62.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/PostBodyData.tsx": {"lines":{"total":32,"covered":17,"skipped":0,"pct":53.13},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":17,"skipped":0,"pct":51.52},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/ProviderTemplates.tsx": {"lines":{"total":93,"covered":35,"skipped":0,"pct":37.63},"functions":{"total":21,"covered":1,"skipped":0,"pct":4.76},"statements":{"total":102,"covered":36,"skipped":0,"pct":35.29},"branches":{"total":49,"covered":20,"skipped":0,"pct":40.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/RapidApiEditorForm.tsx": {"lines":{"total":46,"covered":29,"skipped":0,"pct":63.04},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":46,"covered":29,"skipped":0,"pct":63.04},"branches":{"total":39,"covered":18,"skipped":0,"pct":46.15}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/helpers.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/APIEditor/index.tsx": {"lines":{"total":93,"covered":31,"skipped":0,"pct":33.33},"functions":{"total":20,"covered":1,"skipped":0,"pct":5},"statements":{"total":104,"covered":32,"skipped":0,"pct":30.77},"branches":{"total":55,"covered":2,"skipped":0,"pct":3.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/BackButton.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/Collapsible.tsx": {"lines":{"total":15,"covered":9,"skipped":0,"pct":60},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":19,"covered":10,"skipped":0,"pct":52.63},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/Connected.tsx": {"lines":{"total":50,"covered":25,"skipped":0,"pct":50},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":25,"skipped":0,"pct":49.02},"branches":{"total":72,"covered":8,"skipped":0,"pct":11.11}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/DBForm.tsx": {"lines":{"total":71,"covered":34,"skipped":0,"pct":47.89},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":73,"covered":35,"skipped":0,"pct":47.95},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/DatasourceSection.tsx": {"lines":{"total":39,"covered":11,"skipped":0,"pct":28.21},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":41,"covered":12,"skipped":0,"pct":29.27},"branches":{"total":30,"covered":8,"skipped":0,"pct":26.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/FormTitle.tsx": {"lines":{"total":45,"covered":13,"skipped":0,"pct":28.89},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":47,"covered":13,"skipped":0,"pct":27.66},"branches":{"total":39,"covered":2,"skipped":0,"pct":5.13}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/JSONtoForm.tsx": {"lines":{"total":127,"covered":22,"skipped":0,"pct":17.32},"functions":{"total":23,"covered":1,"skipped":0,"pct":4.35},"statements":{"total":142,"covered":23,"skipped":0,"pct":16.2},"branches":{"total":69,"covered":14,"skipped":0,"pct":20.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/RestAPIDatasourceForm.tsx": {"lines":{"total":169,"covered":49,"skipped":0,"pct":28.99},"functions":{"total":34,"covered":1,"skipped":0,"pct":2.94},"statements":{"total":194,"covered":50,"skipped":0,"pct":25.77},"branches":{"total":112,"covered":22,"skipped":0,"pct":19.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/DataSourceEditor/index.tsx": {"lines":{"total":86,"covered":25,"skipped":0,"pct":29.07},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":97,"covered":27,"skipped":0,"pct":27.84},"branches":{"total":55,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/ContextMenuTrigger.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/EntityExplorer.tsx": {"lines":{"total":45,"covered":38,"skipped":0,"pct":84.44},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":48,"covered":40,"skipped":0,"pct":83.33},"branches":{"total":17,"covered":8,"skipped":0,"pct":47.06}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/ExplorerIcons.tsx": {"lines":{"total":51,"covered":44,"skipped":0,"pct":86.27},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":53,"covered":46,"skipped":0,"pct":86.79},"branches":{"total":12,"covered":7,"skipped":0,"pct":58.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/ExplorerSearch.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/ExplorerStyledComponents.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/JSDependencies.tsx": {"lines":{"total":28,"covered":25,"skipped":0,"pct":89.29},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":33,"covered":28,"skipped":0,"pct":84.85},"branches":{"total":16,"covered":15,"skipped":0,"pct":93.75}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/TreeDropdown.tsx": {"lines":{"total":35,"covered":22,"skipped":0,"pct":62.86},"functions":{"total":9,"covered":4,"skipped":0,"pct":44.44},"statements":{"total":37,"covered":24,"skipped":0,"pct":64.86},"branches":{"total":26,"covered":14,"skipped":0,"pct":53.85}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/helpers.tsx": {"lines":{"total":25,"covered":16,"skipped":0,"pct":64},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":28,"covered":19,"skipped":0,"pct":67.86},"branches":{"total":60,"covered":27,"skipped":0,"pct":45}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/hooks.ts": {"lines":{"total":125,"covered":65,"skipped":0,"pct":52},"functions":{"total":37,"covered":22,"skipped":0,"pct":59.46},"statements":{"total":159,"covered":77,"skipped":0,"pct":48.43},"branches":{"total":65,"covered":19,"skipped":0,"pct":29.23}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/index.tsx": {"lines":{"total":11,"covered":10,"skipped":0,"pct":90.91},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionEntity.tsx": {"lines":{"total":25,"covered":15,"skipped":0,"pct":60},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":15,"skipped":0,"pct":60},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionEntityContextMenu.tsx": {"lines":{"total":35,"covered":14,"skipped":0,"pct":40},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":36,"covered":14,"skipped":0,"pct":38.89},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionsGroup.tsx": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Actions/MoreActionsMenu.tsx": {"lines":{"total":35,"covered":12,"skipped":0,"pct":34.29},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":12,"skipped":0,"pct":31.58},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Actions/helpers.tsx": {"lines":{"total":53,"covered":26,"skipped":0,"pct":49.06},"functions":{"total":20,"covered":4,"skipped":0,"pct":20},"statements":{"total":62,"covered":29,"skipped":0,"pct":46.77},"branches":{"total":53,"covered":19,"skipped":0,"pct":35.85}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DataSourceContextMenu.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceEntity.tsx": {"lines":{"total":45,"covered":16,"skipped":0,"pct":35.56},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":45,"covered":16,"skipped":0,"pct":35.56},"branches":{"total":18,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceField.tsx": {"lines":{"total":21,"covered":14,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":14,"skipped":0,"pct":66.67},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceStructure.tsx": {"lines":{"total":28,"covered":14,"skipped":0,"pct":50},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":31,"covered":14,"skipped":0,"pct":45.16},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceStructureContainer.tsx": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":9,"skipped":0,"pct":52.94},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Datasources/QueryTemplates.tsx": {"lines":{"total":33,"covered":16,"skipped":0,"pct":48.48},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":34,"covered":16,"skipped":0,"pct":47.06},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/AddButton.tsx": {"lines":{"total":11,"covered":9,"skipped":0,"pct":81.82},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":13,"covered":11,"skipped":0,"pct":84.62},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/Collapse.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/CollapseToggle.tsx": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/CurrentPageEntityProperties.tsx": {"lines":{"total":46,"covered":13,"skipped":0,"pct":28.26},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":48,"covered":13,"skipped":0,"pct":27.08},"branches":{"total":16,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/EntityProperties.tsx": {"lines":{"total":51,"covered":12,"skipped":0,"pct":23.53},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":52,"covered":12,"skipped":0,"pct":23.08},"branches":{"total":26,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/EntityProperty.tsx": {"lines":{"total":39,"covered":21,"skipped":0,"pct":53.85},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":39,"covered":21,"skipped":0,"pct":53.85},"branches":{"total":26,"covered":6,"skipped":0,"pct":23.08}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/Loader.tsx": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/Name.tsx": {"lines":{"total":78,"covered":46,"skipped":0,"pct":58.97},"functions":{"total":19,"covered":10,"skipped":0,"pct":52.63},"statements":{"total":82,"covered":49,"skipped":0,"pct":59.76},"branches":{"total":42,"covered":11,"skipped":0,"pct":26.19}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/Placeholder.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":6,"skipped":0,"pct":54.55},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Entity/index.tsx": {"lines":{"total":59,"covered":56,"skipped":0,"pct":94.92},"functions":{"total":16,"covered":15,"skipped":0,"pct":93.75},"statements":{"total":62,"covered":59,"skipped":0,"pct":95.16},"branches":{"total":46,"covered":37,"skipped":0,"pct":80.43}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/DBQueryGroup.tsx": {"lines":{"total":37,"covered":18,"skipped":0,"pct":48.65},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":18,"skipped":0,"pct":47.37},"branches":{"total":16,"covered":6,"skipped":0,"pct":37.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/Loading.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/index.tsx": {"lines":{"total":24,"covered":12,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":12,"skipped":0,"pct":46.15},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageContextMenu.tsx": {"lines":{"total":34,"covered":25,"skipped":0,"pct":73.53},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":35,"covered":25,"skipped":0,"pct":71.43},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageEntity.tsx": {"lines":{"total":30,"covered":26,"skipped":0,"pct":86.67},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":30,"covered":26,"skipped":0,"pct":86.67},"branches":{"total":8,"covered":3,"skipped":0,"pct":37.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageGroup.tsx": {"lines":{"total":33,"covered":28,"skipped":0,"pct":84.85},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":34,"covered":28,"skipped":0,"pct":82.35},"branches":{"total":17,"covered":10,"skipped":0,"pct":58.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/PluginGroup/PluginGroup.tsx": {"lines":{"total":25,"covered":22,"skipped":0,"pct":88},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":26,"covered":23,"skipped":0,"pct":88.46},"branches":{"total":57,"covered":35,"skipped":0,"pct":61.4}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetContextMenu.tsx": {"lines":{"total":37,"covered":12,"skipped":0,"pct":32.43},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":12,"skipped":0,"pct":31.58},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetEntity.tsx": {"lines":{"total":50,"covered":50,"skipped":0,"pct":100},"functions":{"total":8,"covered":8,"skipped":0,"pct":100},"statements":{"total":52,"covered":51,"skipped":0,"pct":98.08},"branches":{"total":49,"covered":39,"skipped":0,"pct":79.59}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetGroup.tsx": {"lines":{"total":24,"covered":22,"skipped":0,"pct":91.67},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":25,"covered":23,"skipped":0,"pct":92},"branches":{"total":43,"covered":28,"skipped":0,"pct":65.12}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Widgets/useNavigateToWidget.ts": {"lines":{"total":39,"covered":36,"skipped":0,"pct":92.31},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":41,"covered":37,"skipped":0,"pct":90.24},"branches":{"total":16,"covered":12,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/Explorer/Widgets/utils.ts": {"lines":{"total":6,"covered":6,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx": {"lines":{"total":41,"covered":21,"skipped":0,"pct":51.22},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":50,"covered":22,"skipped":0,"pct":44},"branches":{"total":35,"covered":6,"skipped":0,"pct":17.14}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/AddDatasourceSecurely.tsx": {"lines":{"total":11,"covered":10,"skipped":0,"pct":90.91},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/DatasourceCard.tsx": {"lines":{"total":52,"covered":26,"skipped":0,"pct":50},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":55,"covered":26,"skipped":0,"pct":47.27},"branches":{"total":42,"covered":20,"skipped":0,"pct":47.62}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/DatasourceHome.tsx": {"lines":{"total":33,"covered":20,"skipped":0,"pct":60.61},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":38,"covered":21,"skipped":0,"pct":55.26},"branches":{"total":15,"covered":8,"skipped":0,"pct":53.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/IntegrationsHomeScreen.tsx": {"lines":{"total":120,"covered":37,"skipped":0,"pct":30.83},"functions":{"total":19,"covered":1,"skipped":0,"pct":5.26},"statements":{"total":134,"covered":38,"skipped":0,"pct":28.36},"branches":{"total":78,"covered":10,"skipped":0,"pct":12.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/MockDataSources.tsx": {"lines":{"total":33,"covered":15,"skipped":0,"pct":45.45},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":15,"skipped":0,"pct":45.45},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/NewApi.tsx": {"lines":{"total":31,"covered":20,"skipped":0,"pct":64.52},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":32,"covered":20,"skipped":0,"pct":62.5},"branches":{"total":12,"covered":8,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/NewQuery.tsx": {"lines":{"total":16,"covered":11,"skipped":0,"pct":68.75},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":22,"covered":12,"skipped":0,"pct":54.55},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/IntegrationEditor/index.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/ConnectDataCTA.tsx": {"lines":{"total":33,"covered":29,"skipped":0,"pct":87.88},"functions":{"total":14,"covered":12,"skipped":0,"pct":85.71},"statements":{"total":34,"covered":30,"skipped":0,"pct":88.24},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/Generator.tsx": {"lines":{"total":17,"covered":16,"skipped":0,"pct":94.12},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":19,"covered":17,"skipped":0,"pct":89.47},"branches":{"total":10,"covered":7,"skipped":0,"pct":70}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/PanelPropertiesEditor.tsx": {"lines":{"total":74,"covered":14,"skipped":0,"pct":18.92},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":76,"covered":14,"skipped":0,"pct":18.42},"branches":{"total":40,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyControl.tsx": {"lines":{"total":107,"covered":64,"skipped":0,"pct":59.81},"functions":{"total":12,"covered":3,"skipped":0,"pct":25},"statements":{"total":113,"covered":65,"skipped":0,"pct":57.52},"branches":{"total":48,"covered":20,"skipped":0,"pct":41.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyHelpLabel.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyPaneConnections.tsx": {"lines":{"total":70,"covered":40,"skipped":0,"pct":57.14},"functions":{"total":28,"covered":9,"skipped":0,"pct":32.14},"statements":{"total":72,"covered":41,"skipped":0,"pct":56.94},"branches":{"total":68,"covered":26,"skipped":0,"pct":38.24}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/PropertySection.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":28,"covered":24,"skipped":0,"pct":85.71},"branches":{"total":14,"covered":8,"skipped":0,"pct":57.14}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/PropertyPane/index.tsx": {"lines":{"total":99,"covered":84,"skipped":0,"pct":84.85},"functions":{"total":25,"covered":17,"skipped":0,"pct":68},"statements":{"total":107,"covered":89,"skipped":0,"pct":83.18},"branches":{"total":103,"covered":75,"skipped":0,"pct":72.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/EditorJSONtoForm.tsx": {"lines":{"total":140,"covered":67,"skipped":0,"pct":47.86},"functions":{"total":31,"covered":0,"skipped":0,"pct":0},"statements":{"total":147,"covered":67,"skipped":0,"pct":45.58},"branches":{"total":105,"covered":48,"skipped":0,"pct":45.71}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/Form.tsx": {"lines":{"total":16,"covered":9,"skipped":0,"pct":56.25},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":9,"skipped":0,"pct":56.25},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/JSONViewer.tsx": {"lines":{"total":19,"covered":11,"skipped":0,"pct":57.89},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":20,"covered":12,"skipped":0,"pct":60},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/Table.tsx": {"lines":{"total":54,"covered":14,"skipped":0,"pct":25.93},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":57,"covered":14,"skipped":0,"pct":24.56},"branches":{"total":24,"covered":2,"skipped":0,"pct":8.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/TemplateMenu.tsx": {"lines":{"total":32,"covered":28,"skipped":0,"pct":87.5},"functions":{"total":9,"covered":7,"skipped":0,"pct":77.78},"statements":{"total":40,"covered":36,"skipped":0,"pct":90},"branches":{"total":15,"covered":12,"skipped":0,"pct":80}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/QueryEditor/index.tsx": {"lines":{"total":79,"covered":27,"skipped":0,"pct":34.18},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":87,"covered":28,"skipped":0,"pct":32.18},"branches":{"total":33,"covered":4,"skipped":0,"pct":12.12}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/ActionForm.tsx": {"lines":{"total":48,"covered":13,"skipped":0,"pct":27.08},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":13,"skipped":0,"pct":25.49},"branches":{"total":26,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/DatasourceCard.tsx": {"lines":{"total":36,"covered":22,"skipped":0,"pct":61.11},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":36,"covered":22,"skipped":0,"pct":61.11},"branches":{"total":34,"covered":18,"skipped":0,"pct":52.94}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/DatasourceForm.tsx": {"lines":{"total":91,"covered":33,"skipped":0,"pct":36.26},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":99,"covered":34,"skipped":0,"pct":34.34},"branches":{"total":35,"covered":6,"skipped":0,"pct":17.14}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/ListView.tsx": {"lines":{"total":69,"covered":26,"skipped":0,"pct":37.68},"functions":{"total":17,"covered":1,"skipped":0,"pct":5.88},"statements":{"total":79,"covered":27,"skipped":0,"pct":34.18},"branches":{"total":25,"covered":8,"skipped":0,"pct":32}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/constants.ts": {"lines":{"total":27,"covered":27,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":31,"covered":31,"skipped":0,"pct":100},"branches":{"total":30,"covered":19,"skipped":0,"pct":63.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/Editor/SaaSEditor/routes.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/ArtBoard.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/CanvasSelectionArena.tsx": {"lines":{"total":101,"covered":91,"skipped":0,"pct":90.1},"functions":{"total":17,"covered":14,"skipped":0,"pct":82.35},"statements":{"total":104,"covered":94,"skipped":0,"pct":90.38},"branches":{"total":33,"covered":19,"skipped":0,"pct":57.58}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/NotFound.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/ProfileDropdown.tsx": {"lines":{"total":26,"covered":18,"skipped":0,"pct":69.23},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":18,"skipped":0,"pct":69.23},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/ProfileImage.tsx": {"lines":{"total":18,"covered":16,"skipped":0,"pct":88.89},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":20,"covered":18,"skipped":0,"pct":90},"branches":{"total":16,"covered":10,"skipped":0,"pct":62.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/ThemeSwitcher.tsx": {"lines":{"total":13,"covered":7,"skipped":0,"pct":53.85},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/common/CustomizedDropdown/dropdownHelpers.tsx": {"lines":{"total":28,"covered":9,"skipped":0,"pct":32.14},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":10,"skipped":0,"pct":34.48},"branches":{"total":15,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/organization/AppInviteUsersForm.tsx": {"lines":{"total":35,"covered":17,"skipped":0,"pct":48.57},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":35,"covered":17,"skipped":0,"pct":48.57},"branches":{"total":38,"covered":6,"skipped":0,"pct":15.79}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/organization/General.tsx": {"lines":{"total":47,"covered":35,"skipped":0,"pct":74.47},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":47,"covered":35,"skipped":0,"pct":74.47},"branches":{"total":44,"covered":32,"skipped":0,"pct":72.73}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/organization/ManageUsers.tsx": {"lines":{"total":19,"covered":9,"skipped":0,"pct":47.37},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":9,"skipped":0,"pct":47.37},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/organization/OrgInviteUsersForm.tsx": {"lines":{"total":103,"covered":43,"skipped":0,"pct":41.75},"functions":{"total":27,"covered":0,"skipped":0,"pct":0},"statements":{"total":107,"covered":43,"skipped":0,"pct":40.19},"branches":{"total":100,"covered":24,"skipped":0,"pct":24}} -,"/Users/hetunandu/code/appsmith/app/client/src/pages/organization/helpers.ts": {"lines":{"total":16,"covered":5,"skipped":0,"pct":31.25},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":8,"skipped":0,"pct":40},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/index.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/actionsReducer.tsx": {"lines":{"total":104,"covered":7,"skipped":0,"pct":6.73},"functions":{"total":51,"covered":0,"skipped":0,"pct":0},"statements":{"total":106,"covered":7,"skipped":0,"pct":6.6},"branches":{"total":48,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/appReducer.ts": {"lines":{"total":13,"covered":10,"skipped":0,"pct":76.92},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":13,"covered":10,"skipped":0,"pct":76.92},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/canvasWidgetsReducer.tsx": {"lines":{"total":11,"covered":8,"skipped":0,"pct":72.73},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/datasourceReducer.ts": {"lines":{"total":52,"covered":5,"skipped":0,"pct":9.62},"functions":{"total":34,"covered":0,"skipped":0,"pct":0},"statements":{"total":54,"covered":5,"skipped":0,"pct":9.26},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/index.ts": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/jsExecutionsReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/metaReducer.ts": {"lines":{"total":21,"covered":9,"skipped":0,"pct":42.86},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":21,"covered":9,"skipped":0,"pct":42.86},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/pageListReducer.tsx": {"lines":{"total":32,"covered":8,"skipped":0,"pct":25},"functions":{"total":13,"covered":3,"skipped":0,"pct":23.08},"statements":{"total":36,"covered":8,"skipped":0,"pct":22.22},"branches":{"total":18,"covered":5,"skipped":0,"pct":27.78}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/pluginsReducer.ts": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":5,"skipped":0,"pct":50},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/entityReducers/widgetConfigReducer.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/evaluationReducers/dependencyReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/evaluationReducers/index.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/evaluationReducers/loadingEntitiesReducer.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/evaluationReducers/treeReducer.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/apiNameReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/apiPaneReducer.ts": {"lines":{"total":25,"covered":5,"skipped":0,"pct":20},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":27,"covered":5,"skipped":0,"pct":18.52},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/appViewReducer.tsx": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":5,"skipped":0,"pct":50},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/applicationsReducer.tsx": {"lines":{"total":79,"covered":9,"skipped":0,"pct":11.39},"functions":{"total":39,"covered":3,"skipped":0,"pct":7.69},"statements":{"total":82,"covered":9,"skipped":0,"pct":10.98},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/authReducer.ts": {"lines":{"total":11,"covered":5,"skipped":0,"pct":45.45},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":5,"skipped":0,"pct":45.45},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/canvasSelectionReducer.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/confirmRunActionReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/datasourceNameReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/datasourcePaneReducer.ts": {"lines":{"total":15,"covered":6,"skipped":0,"pct":40},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":6,"skipped":0,"pct":40},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/debuggerReducer.ts": {"lines":{"total":26,"covered":10,"skipped":0,"pct":38.46},"functions":{"total":7,"covered":1,"skipped":0,"pct":14.29},"statements":{"total":28,"covered":10,"skipped":0,"pct":35.71},"branches":{"total":18,"covered":1,"skipped":0,"pct":5.56}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/dragResizeReducer.ts": {"lines":{"total":39,"covered":34,"skipped":0,"pct":87.18},"functions":{"total":11,"covered":7,"skipped":0,"pct":63.64},"statements":{"total":40,"covered":34,"skipped":0,"pct":85},"branches":{"total":26,"covered":16,"skipped":0,"pct":61.54}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/editorReducer.tsx": {"lines":{"total":68,"covered":15,"skipped":0,"pct":22.06},"functions":{"total":23,"covered":5,"skipped":0,"pct":21.74},"statements":{"total":68,"covered":15,"skipped":0,"pct":22.06},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/errorReducer.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/explorerReducer.ts": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":19,"covered":10,"skipped":0,"pct":52.63},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/globalSearchReducer.ts": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/helpReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/importReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/importedCollectionsReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/index.tsx": {"lines":{"total":36,"covered":36,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":36,"covered":36,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/notificationsReducer.ts": {"lines":{"total":21,"covered":6,"skipped":0,"pct":28.57},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":6,"skipped":0,"pct":28.57},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/onBoardingReducer.ts": {"lines":{"total":21,"covered":6,"skipped":0,"pct":28.57},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":6,"skipped":0,"pct":28.57},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/orgReducer.ts": {"lines":{"total":37,"covered":6,"skipped":0,"pct":16.22},"functions":{"total":24,"covered":1,"skipped":0,"pct":4.17},"statements":{"total":37,"covered":6,"skipped":0,"pct":16.22},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/pageCanvasStructureReducer.ts": {"lines":{"total":12,"covered":10,"skipped":0,"pct":83.33},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":12,"covered":10,"skipped":0,"pct":83.33},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/pageWidgetsReducer.ts": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":12,"covered":11,"skipped":0,"pct":91.67},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/propertyPaneReducer.tsx": {"lines":{"total":25,"covered":15,"skipped":0,"pct":60},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":27,"covered":17,"skipped":0,"pct":62.96},"branches":{"total":21,"covered":9,"skipped":0,"pct":42.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/providerReducer.ts": {"lines":{"total":43,"covered":5,"skipped":0,"pct":11.63},"functions":{"total":23,"covered":0,"skipped":0,"pct":0},"statements":{"total":44,"covered":5,"skipped":0,"pct":11.36},"branches":{"total":8,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/queryPaneReducer.ts": {"lines":{"total":21,"covered":6,"skipped":0,"pct":28.57},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":6,"skipped":0,"pct":26.09},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/releasesReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/themeReducer.ts": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/tourReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/usersReducer.ts": {"lines":{"total":31,"covered":7,"skipped":0,"pct":22.58},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":31,"covered":7,"skipped":0,"pct":22.58},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/websocketReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/widgetSidebarReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/commentsReducer.ts": {"lines":{"total":65,"covered":33,"skipped":0,"pct":50.77},"functions":{"total":27,"covered":14,"skipped":0,"pct":51.85},"statements":{"total":74,"covered":33,"skipped":0,"pct":44.59},"branches":{"total":12,"covered":3,"skipped":0,"pct":25}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleAddCommentToThreadSuccess.ts": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleCreateNewCommentThreadSuccess.ts": {"lines":{"total":10,"covered":9,"skipped":0,"pct":90},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleFetchApplicationCommentsSuccess.ts": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleNewCommentThreadEvent.ts": {"lines":{"total":13,"covered":12,"skipped":0,"pct":92.31},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentEvent.ts": {"lines":{"total":10,"covered":2,"skipped":0,"pct":20},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":2,"skipped":0,"pct":15.38},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentThreadEvent.ts": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":46,"covered":28,"skipped":0,"pct":60.87}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentThreadSuccess.ts": {"lines":{"total":14,"covered":13,"skipped":0,"pct":92.86},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":13,"skipped":0,"pct":86.67},"branches":{"total":40,"covered":23,"skipped":0,"pct":57.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/reducers/uiReducers/commentsReducer/testFixtures.ts": {"lines":{"total":9,"covered":9,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/resizable/index.tsx": {"lines":{"total":68,"covered":42,"skipped":0,"pct":61.76},"functions":{"total":20,"covered":7,"skipped":0,"pct":35},"statements":{"total":79,"covered":47,"skipped":0,"pct":59.49},"branches":{"total":38,"covered":16,"skipped":0,"pct":42.11}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ActionExecutionSagas.ts": {"lines":{"total":344,"covered":48,"skipped":0,"pct":13.95},"functions":{"total":28,"covered":2,"skipped":0,"pct":7.14},"statements":{"total":403,"covered":49,"skipped":0,"pct":12.16},"branches":{"total":232,"covered":3,"skipped":0,"pct":1.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ActionSagas.ts": {"lines":{"total":263,"covered":37,"skipped":0,"pct":14.07},"functions":{"total":24,"covered":1,"skipped":0,"pct":4.17},"statements":{"total":319,"covered":37,"skipped":0,"pct":11.6},"branches":{"total":100,"covered":1,"skipped":0,"pct":1}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ApiPaneSagas.ts": {"lines":{"total":184,"covered":32,"skipped":0,"pct":17.39},"functions":{"total":28,"covered":2,"skipped":0,"pct":7.14},"statements":{"total":213,"covered":33,"skipped":0,"pct":15.49},"branches":{"total":107,"covered":2,"skipped":0,"pct":1.87}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ApplicationSagas.tsx": {"lines":{"total":164,"covered":37,"skipped":0,"pct":22.56},"functions":{"total":22,"covered":2,"skipped":0,"pct":9.09},"statements":{"total":193,"covered":37,"skipped":0,"pct":19.17},"branches":{"total":59,"covered":2,"skipped":0,"pct":3.39}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/BatchSagas.tsx": {"lines":{"total":25,"covered":8,"skipped":0,"pct":32},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":31,"covered":8,"skipped":0,"pct":25.81},"branches":{"total":12,"covered":1,"skipped":0,"pct":8.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/CollectionSagas.ts": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":14,"covered":7,"skipped":0,"pct":50},"branches":{"total":3,"covered":1,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/CurlImportSagas.ts": {"lines":{"total":31,"covered":17,"skipped":0,"pct":54.84},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":35,"covered":17,"skipped":0,"pct":48.57},"branches":{"total":3,"covered":1,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/DatasourcesSagas.ts": {"lines":{"total":237,"covered":37,"skipped":0,"pct":15.61},"functions":{"total":23,"covered":2,"skipped":0,"pct":8.7},"statements":{"total":288,"covered":38,"skipped":0,"pct":13.19},"branches":{"total":102,"covered":2,"skipped":0,"pct":1.96}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/DebuggerSagas.ts": {"lines":{"total":114,"covered":27,"skipped":0,"pct":23.68},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":126,"covered":28,"skipped":0,"pct":22.22},"branches":{"total":126,"covered":6,"skipped":0,"pct":4.76}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ErrorSagas.tsx": {"lines":{"total":102,"covered":58,"skipped":0,"pct":56.86},"functions":{"total":18,"covered":7,"skipped":0,"pct":38.89},"statements":{"total":113,"covered":65,"skipped":0,"pct":57.52},"branches":{"total":63,"covered":24,"skipped":0,"pct":38.1}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/EvaluationsSaga.ts": {"lines":{"total":93,"covered":21,"skipped":0,"pct":22.58},"functions":{"total":15,"covered":1,"skipped":0,"pct":6.67},"statements":{"total":106,"covered":21,"skipped":0,"pct":19.81},"branches":{"total":33,"covered":1,"skipped":0,"pct":3.03}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/GlobalSearchSagas.ts": {"lines":{"total":35,"covered":19,"skipped":0,"pct":54.29},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":40,"covered":21,"skipped":0,"pct":52.5},"branches":{"total":23,"covered":3,"skipped":0,"pct":13.04}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/InitSagas.ts": {"lines":{"total":93,"covered":45,"skipped":0,"pct":48.39},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":110,"covered":49,"skipped":0,"pct":44.55},"branches":{"total":35,"covered":5,"skipped":0,"pct":14.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ModalSagas.ts": {"lines":{"total":56,"covered":26,"skipped":0,"pct":46.43},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":61,"covered":28,"skipped":0,"pct":45.9},"branches":{"total":24,"covered":5,"skipped":0,"pct":20.83}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/NotificationsSagas.ts": {"lines":{"total":34,"covered":8,"skipped":0,"pct":23.53},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":44,"covered":8,"skipped":0,"pct":18.18},"branches":{"total":12,"covered":1,"skipped":0,"pct":8.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/OnboardingSagas.ts": {"lines":{"total":315,"covered":53,"skipped":0,"pct":16.83},"functions":{"total":49,"covered":5,"skipped":0,"pct":10.2},"statements":{"total":371,"covered":62,"skipped":0,"pct":16.71},"branches":{"total":137,"covered":2,"skipped":0,"pct":1.46}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/OrgSagas.ts": {"lines":{"total":106,"covered":26,"skipped":0,"pct":24.53},"functions":{"total":14,"covered":2,"skipped":0,"pct":14.29},"statements":{"total":133,"covered":26,"skipped":0,"pct":19.55},"branches":{"total":33,"covered":1,"skipped":0,"pct":3.03}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/PageSagas.tsx": {"lines":{"total":243,"covered":62,"skipped":0,"pct":25.51},"functions":{"total":32,"covered":5,"skipped":0,"pct":15.63},"statements":{"total":283,"covered":67,"skipped":0,"pct":23.67},"branches":{"total":65,"covered":4,"skipped":0,"pct":6.15}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/PluginSagas.ts": {"lines":{"total":69,"covered":14,"skipped":0,"pct":20.29},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":84,"covered":14,"skipped":0,"pct":16.67},"branches":{"total":27,"covered":1,"skipped":0,"pct":3.7}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/PostEvaluationSagas.ts": {"lines":{"total":110,"covered":26,"skipped":0,"pct":23.64},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":129,"covered":26,"skipped":0,"pct":20.16},"branches":{"total":64,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ProvidersSaga.ts": {"lines":{"total":63,"covered":19,"skipped":0,"pct":30.16},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":78,"covered":19,"skipped":0,"pct":24.36},"branches":{"total":19,"covered":1,"skipped":0,"pct":5.26}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/QueryPaneSagas.ts": {"lines":{"total":89,"covered":25,"skipped":0,"pct":28.09},"functions":{"total":8,"covered":2,"skipped":0,"pct":25},"statements":{"total":109,"covered":26,"skipped":0,"pct":23.85},"branches":{"total":39,"covered":5,"skipped":0,"pct":12.82}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/RecentEntitiesSagas.ts": {"lines":{"total":29,"covered":13,"skipped":0,"pct":44.83},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":29,"covered":13,"skipped":0,"pct":44.83},"branches":{"total":66,"covered":8,"skipped":0,"pct":12.12}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/SaaSPaneSagas.ts": {"lines":{"total":34,"covered":16,"skipped":0,"pct":47.06},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":46,"covered":17,"skipped":0,"pct":36.96},"branches":{"total":15,"covered":5,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/SelectionCanvasSagas.ts": {"lines":{"total":39,"covered":37,"skipped":0,"pct":94.87},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":44,"covered":42,"skipped":0,"pct":95.45},"branches":{"total":16,"covered":9,"skipped":0,"pct":56.25}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/ThemeSaga.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/TourSagas.ts": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":18,"covered":7,"skipped":0,"pct":38.89},"branches":{"total":7,"covered":1,"skipped":0,"pct":14.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/UtilSagas.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":1,"covered":1,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetBlueprintSagas.ts": {"lines":{"total":50,"covered":17,"skipped":0,"pct":34},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":56,"covered":17,"skipped":0,"pct":30.36},"branches":{"total":32,"covered":1,"skipped":0,"pct":3.13}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetBlueprintSagasEnums.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetEnhancementHelpers.ts": {"lines":{"total":65,"covered":36,"skipped":0,"pct":55.38},"functions":{"total":14,"covered":6,"skipped":0,"pct":42.86},"statements":{"total":73,"covered":38,"skipped":0,"pct":52.05},"branches":{"total":47,"covered":17,"skipped":0,"pct":36.17}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetLoadingSaga.ts": {"lines":{"total":50,"covered":15,"skipped":0,"pct":30},"functions":{"total":13,"covered":2,"skipped":0,"pct":15.38},"statements":{"total":57,"covered":15,"skipped":0,"pct":26.32},"branches":{"total":14,"covered":3,"skipped":0,"pct":21.43}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetOperationSagas.tsx": {"lines":{"total":606,"covered":270,"skipped":0,"pct":44.55},"functions":{"total":85,"covered":43,"skipped":0,"pct":50.59},"statements":{"total":694,"covered":307,"skipped":0,"pct":44.24},"branches":{"total":319,"covered":98,"skipped":0,"pct":30.72}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetOperationUtils.ts": {"lines":{"total":107,"covered":56,"skipped":0,"pct":52.34},"functions":{"total":13,"covered":9,"skipped":0,"pct":69.23},"statements":{"total":117,"covered":62,"skipped":0,"pct":52.99},"branches":{"total":89,"covered":29,"skipped":0,"pct":32.58}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetSelectionSagas.ts": {"lines":{"total":71,"covered":68,"skipped":0,"pct":95.77},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":79,"covered":76,"skipped":0,"pct":96.2},"branches":{"total":46,"covered":43,"skipped":0,"pct":93.48}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WidgetSidebarSagas.tsx": {"lines":{"total":10,"covered":7,"skipped":0,"pct":70},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":11,"covered":7,"skipped":0,"pct":63.64},"branches":{"total":1,"covered":1,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/index.tsx": {"lines":{"total":45,"covered":42,"skipped":0,"pct":93.33},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":47,"covered":43,"skipped":0,"pct":91.49},"branches":{"total":5,"covered":3,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/selectors.tsx": {"lines":{"total":75,"covered":50,"skipped":0,"pct":66.67},"functions":{"total":28,"covered":14,"skipped":0,"pct":50},"statements":{"total":99,"covered":72,"skipped":0,"pct":72.73},"branches":{"total":24,"covered":13,"skipped":0,"pct":54.17}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/userSagas.tsx": {"lines":{"total":161,"covered":37,"skipped":0,"pct":22.98},"functions":{"total":16,"covered":2,"skipped":0,"pct":12.5},"statements":{"total":192,"covered":38,"skipped":0,"pct":19.79},"branches":{"total":52,"covered":3,"skipped":0,"pct":5.77}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/CommentSagas/index.ts": {"lines":{"total":102,"covered":43,"skipped":0,"pct":42.16},"functions":{"total":18,"covered":9,"skipped":0,"pct":50},"statements":{"total":132,"covered":56,"skipped":0,"pct":42.42},"branches":{"total":28,"covered":5,"skipped":0,"pct":17.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WebsocketSagas/WebsocketSagas.ts": {"lines":{"total":54,"covered":12,"skipped":0,"pct":22.22},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":64,"covered":12,"skipped":0,"pct":18.75},"branches":{"total":19,"covered":2,"skipped":0,"pct":10.53}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WebsocketSagas/constants.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/sagas/WebsocketSagas/handleSocketEvent.ts": {"lines":{"total":30,"covered":7,"skipped":0,"pct":23.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":32,"covered":7,"skipped":0,"pct":21.88},"branches":{"total":24,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/appViewSelectors.tsx": {"lines":{"total":15,"covered":10,"skipped":0,"pct":66.67},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":16,"covered":11,"skipped":0,"pct":68.75},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/applicationSelectors.tsx": {"lines":{"total":61,"covered":37,"skipped":0,"pct":60.66},"functions":{"total":24,"covered":11,"skipped":0,"pct":45.83},"statements":{"total":79,"covered":54,"skipped":0,"pct":68.35},"branches":{"total":22,"covered":6,"skipped":0,"pct":27.27}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/commentsSelectors.ts": {"lines":{"total":69,"covered":24,"skipped":0,"pct":34.78},"functions":{"total":25,"covered":10,"skipped":0,"pct":40},"statements":{"total":99,"covered":42,"skipped":0,"pct":42.42},"branches":{"total":60,"covered":7,"skipped":0,"pct":11.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/dataTreeSelectors.ts": {"lines":{"total":23,"covered":14,"skipped":0,"pct":60.87},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":27,"covered":18,"skipped":0,"pct":66.67},"branches":{"total":10,"covered":3,"skipped":0,"pct":30}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/debuggerSelectors.tsx": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":3,"covered":3,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/editorSelectors.tsx": {"lines":{"total":107,"covered":63,"skipped":0,"pct":58.88},"functions":{"total":42,"covered":19,"skipped":0,"pct":45.24},"statements":{"total":130,"covered":81,"skipped":0,"pct":62.31},"branches":{"total":37,"covered":17,"skipped":0,"pct":45.95}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/entitiesSelector.ts": {"lines":{"total":165,"covered":75,"skipped":0,"pct":45.45},"functions":{"total":83,"covered":16,"skipped":0,"pct":19.28},"statements":{"total":224,"covered":107,"skipped":0,"pct":47.77},"branches":{"total":72,"covered":4,"skipped":0,"pct":5.56}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/errorSelectors.tsx": {"lines":{"total":4,"covered":2,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/formSelectors.ts": {"lines":{"total":9,"covered":3,"skipped":0,"pct":33.33},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":5,"skipped":0,"pct":45.45},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/helpSelectors.tsx": {"lines":{"total":4,"covered":2,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/organizationSelectors.tsx": {"lines":{"total":27,"covered":17,"skipped":0,"pct":62.96},"functions":{"total":19,"covered":5,"skipped":0,"pct":26.32},"statements":{"total":43,"covered":29,"skipped":0,"pct":67.44},"branches":{"total":14,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/propertyPaneSelectors.tsx": {"lines":{"total":25,"covered":24,"skipped":0,"pct":96},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":26,"covered":25,"skipped":0,"pct":96.15},"branches":{"total":17,"covered":16,"skipped":0,"pct":94.12}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/themeSelectors.tsx": {"lines":{"total":13,"covered":12,"skipped":0,"pct":92.31},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/tourSelectors.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/ui.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/usersSelectors.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":12,"covered":10,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/selectors/widgetSelectors.ts": {"lines":{"total":14,"covered":13,"skipped":0,"pct":92.86},"functions":{"total":6,"covered":5,"skipped":0,"pct":83.33},"statements":{"total":17,"covered":15,"skipped":0,"pct":88.24},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/templates/default.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/transformers/CurlImportTransformer.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/transformers/RestAPIDatasourceFormTransformer.ts": {"lines":{"total":66,"covered":9,"skipped":0,"pct":13.64},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":74,"covered":11,"skipped":0,"pct":14.86},"branches":{"total":85,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/transformers/RestActionTransformer.ts": {"lines":{"total":15,"covered":15,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":17,"covered":16,"skipped":0,"pct":94.12},"branches":{"total":16,"covered":13,"skipped":0,"pct":81.25}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/AnalyticsUtil.tsx": {"lines":{"total":96,"covered":28,"skipped":0,"pct":29.17},"functions":{"total":14,"covered":4,"skipped":0,"pct":28.57},"statements":{"total":100,"covered":29,"skipped":0,"pct":29},"branches":{"total":43,"covered":3,"skipped":0,"pct":6.98}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/ApiPaneUtils.tsx": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":20,"covered":20,"skipped":0,"pct":100},"branches":{"total":19,"covered":15,"skipped":0,"pct":78.95}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/AppsmithConsole.ts": {"lines":{"total":10,"covered":8,"skipped":0,"pct":80},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":10,"covered":8,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/AppsmithUtils.tsx": {"lines":{"total":155,"covered":77,"skipped":0,"pct":49.68},"functions":{"total":37,"covered":14,"skipped":0,"pct":37.84},"statements":{"total":179,"covered":97,"skipped":0,"pct":54.19},"branches":{"total":86,"covered":23,"skipped":0,"pct":26.74}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/DynamicBindingUtils.ts": {"lines":{"total":114,"covered":101,"skipped":0,"pct":88.6},"functions":{"total":21,"covered":16,"skipped":0,"pct":76.19},"statements":{"total":131,"covered":118,"skipped":0,"pct":90.08},"branches":{"total":71,"covered":57,"skipped":0,"pct":80.28}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/EditorUtils.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/FormControlFactory.tsx": {"lines":{"total":16,"covered":7,"skipped":0,"pct":43.75},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":16,"covered":7,"skipped":0,"pct":43.75},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/FormControlRegistry.tsx": {"lines":{"total":42,"covered":18,"skipped":0,"pct":42.86},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":42,"covered":18,"skipped":0,"pct":42.86},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/PerformanceTracker.ts": {"lines":{"total":114,"covered":71,"skipped":0,"pct":62.28},"functions":{"total":11,"covered":8,"skipped":0,"pct":72.73},"statements":{"total":117,"covered":72,"skipped":0,"pct":61.54},"branches":{"total":79,"covered":20,"skipped":0,"pct":25.32}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/PropertyControlFactory.tsx": {"lines":{"total":19,"covered":14,"skipped":0,"pct":73.68},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":20,"covered":14,"skipped":0,"pct":70},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/PropertyControlRegistry.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/TypeHelpers.ts": {"lines":{"total":21,"covered":20,"skipped":0,"pct":95.24},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":30,"covered":27,"skipped":0,"pct":90},"branches":{"total":18,"covered":15,"skipped":0,"pct":83.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/WidgetFactory.tsx": {"lines":{"total":66,"covered":43,"skipped":0,"pct":65.15},"functions":{"total":12,"covered":6,"skipped":0,"pct":50},"statements":{"total":66,"covered":43,"skipped":0,"pct":65.15},"branches":{"total":19,"covered":12,"skipped":0,"pct":63.16}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/WidgetPropsUtils.tsx": {"lines":{"total":498,"covered":319,"skipped":0,"pct":64.06},"functions":{"total":81,"covered":44,"skipped":0,"pct":54.32},"statements":{"total":522,"covered":338,"skipped":0,"pct":64.75},"branches":{"total":447,"covered":262,"skipped":0,"pct":58.61}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/WidgetRegistry.tsx": {"lines":{"total":96,"covered":72,"skipped":0,"pct":75},"functions":{"total":32,"covered":8,"skipped":0,"pct":25},"statements":{"total":96,"covered":72,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/WorkerUtil.ts": {"lines":{"total":65,"covered":60,"skipped":0,"pct":92.31},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":79,"covered":71,"skipped":0,"pct":89.87},"branches":{"total":34,"covered":24,"skipped":0,"pct":70.59}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/canvasStructureHelpers.ts": {"lines":{"total":16,"covered":16,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":18,"covered":18,"skipped":0,"pct":100},"branches":{"total":20,"covered":19,"skipped":0,"pct":95}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/featureFlags.ts": {"lines":{"total":31,"covered":11,"skipped":0,"pct":35.48},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":31,"covered":11,"skipped":0,"pct":35.48},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/formhelpers.ts": {"lines":{"total":12,"covered":8,"skipped":0,"pct":66.67},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":17,"covered":13,"skipped":0,"pct":76.47},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/generators.tsx": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":21,"covered":20,"skipped":0,"pct":95.24},"branches":{"total":6,"covered":3,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/helpers.tsx": {"lines":{"total":120,"covered":57,"skipped":0,"pct":47.5},"functions":{"total":26,"covered":6,"skipped":0,"pct":23.08},"statements":{"total":153,"covered":82,"skipped":0,"pct":53.59},"branches":{"total":71,"covered":19,"skipped":0,"pct":26.76}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/history.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/localStorage.tsx": {"lines":{"total":55,"covered":44,"skipped":0,"pct":80},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":57,"covered":46,"skipped":0,"pct":80.7},"branches":{"total":18,"covered":9,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/storage.ts": {"lines":{"total":100,"covered":32,"skipped":0,"pct":32},"functions":{"total":30,"covered":6,"skipped":0,"pct":20},"statements":{"total":137,"covered":54,"skipped":0,"pct":39.42},"branches":{"total":22,"covered":3,"skipped":0,"pct":13.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/autocomplete/EntityDefinitions.ts": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/autocomplete/TernServer.ts": {"lines":{"total":366,"covered":167,"skipped":0,"pct":45.63},"functions":{"total":58,"covered":17,"skipped":0,"pct":29.31},"statements":{"total":418,"covered":174,"skipped":0,"pct":41.63},"branches":{"total":234,"covered":60,"skipped":0,"pct":25.64}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/autocomplete/customTreeTypeDefCreator.ts": {"lines":{"total":10,"covered":3,"skipped":0,"pct":30},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":4,"skipped":0,"pct":36.36},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/autocomplete/dataTreeTypeDefCreator.ts": {"lines":{"total":52,"covered":41,"skipped":0,"pct":78.85},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":60,"covered":49,"skipped":0,"pct":81.67},"branches":{"total":28,"covered":16,"skipped":0,"pct":57.14}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/autocomplete/dataTypeSortRules.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/dragResizeHooks.tsx": {"lines":{"total":37,"covered":29,"skipped":0,"pct":78.38},"functions":{"total":13,"covered":8,"skipped":0,"pct":61.54},"statements":{"total":45,"covered":36,"skipped":0,"pct":80},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/localstorage.tsx": {"lines":{"total":17,"covered":4,"skipped":0,"pct":23.53},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":4,"skipped":0,"pct":21.05},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useCanvasMinHeightUpdateHook.ts": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":16,"covered":16,"skipped":0,"pct":100},"branches":{"total":7,"covered":6,"skipped":0,"pct":85.71}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useClick.tsx": {"lines":{"total":20,"covered":16,"skipped":0,"pct":80},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":20,"covered":16,"skipped":0,"pct":80},"branches":{"total":14,"covered":9,"skipped":0,"pct":64.29}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useClickOpenPropPane.tsx": {"lines":{"total":50,"covered":40,"skipped":0,"pct":80},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":53,"covered":43,"skipped":0,"pct":81.13},"branches":{"total":42,"covered":22,"skipped":0,"pct":52.38}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useClipboard.tsx": {"lines":{"total":21,"covered":5,"skipped":0,"pct":23.81},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":21,"covered":5,"skipped":0,"pct":23.81},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useDynamicAppLayout.tsx": {"lines":{"total":46,"covered":43,"skipped":0,"pct":93.48},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":52,"covered":49,"skipped":0,"pct":94.23},"branches":{"total":23,"covered":12,"skipped":0,"pct":52.17}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useIsScrolledToBottom.tsx": {"lines":{"total":15,"covered":15,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":21,"covered":20,"skipped":0,"pct":95.24},"branches":{"total":24,"covered":17,"skipped":0,"pct":70.83}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useProceedToNextTourStep.tsx": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useScript.tsx": {"lines":{"total":38,"covered":10,"skipped":0,"pct":26.32},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":41,"covered":10,"skipped":0,"pct":24.39},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/hooks/useWidgetSelection.ts": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/migrations/IncorrectDynamicBindingPathLists.ts": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":19,"covered":18,"skipped":0,"pct":94.74},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/migrations/TableWidget.ts": {"lines":{"total":100,"covered":81,"skipped":0,"pct":81},"functions":{"total":14,"covered":11,"skipped":0,"pct":78.57},"statements":{"total":108,"covered":85,"skipped":0,"pct":78.7},"branches":{"total":104,"covered":66,"skipped":0,"pct":63.46}} -,"/Users/hetunandu/code/appsmith/app/client/src/utils/migrations/TextWidgetReplaceTextStyle.ts": {"lines":{"total":23,"covered":22,"skipped":0,"pct":95.65},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":24,"covered":23,"skipped":0,"pct":95.83},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/BaseWidget.tsx": {"lines":{"total":113,"covered":88,"skipped":0,"pct":77.88},"functions":{"total":31,"covered":24,"skipped":0,"pct":77.42},"statements":{"total":118,"covered":93,"skipped":0,"pct":78.81},"branches":{"total":43,"covered":19,"skipped":0,"pct":44.19}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ButtonWidget.tsx": {"lines":{"total":34,"covered":25,"skipped":0,"pct":73.53},"functions":{"total":9,"covered":5,"skipped":0,"pct":55.56},"statements":{"total":35,"covered":26,"skipped":0,"pct":74.29},"branches":{"total":12,"covered":6,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/CanvasWidget.tsx": {"lines":{"total":40,"covered":33,"skipped":0,"pct":82.5},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":45,"covered":35,"skipped":0,"pct":77.78},"branches":{"total":15,"covered":8,"skipped":0,"pct":53.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/CheckboxWidget.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":27,"covered":25,"skipped":0,"pct":92.59},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ContainerWidget.tsx": {"lines":{"total":50,"covered":36,"skipped":0,"pct":72},"functions":{"total":10,"covered":7,"skipped":0,"pct":70},"statements":{"total":53,"covered":37,"skipped":0,"pct":69.81},"branches":{"total":18,"covered":9,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/DatePickerWidget.tsx": {"lines":{"total":40,"covered":23,"skipped":0,"pct":57.5},"functions":{"total":9,"covered":5,"skipped":0,"pct":55.56},"statements":{"total":42,"covered":24,"skipped":0,"pct":57.14},"branches":{"total":21,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/DatePickerWidget2.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":28,"covered":23,"skipped":0,"pct":82.14},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/DividerWidget.tsx": {"lines":{"total":16,"covered":14,"skipped":0,"pct":87.5},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":17,"covered":15,"skipped":0,"pct":88.24},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/DropdownWidget.tsx": {"lines":{"total":55,"covered":24,"skipped":0,"pct":43.64},"functions":{"total":13,"covered":5,"skipped":0,"pct":38.46},"statements":{"total":59,"covered":25,"skipped":0,"pct":42.37},"branches":{"total":27,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/FileDataTypes.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/FilepickerWidget.tsx": {"lines":{"total":90,"covered":34,"skipped":0,"pct":37.78},"functions":{"total":28,"covered":5,"skipped":0,"pct":17.86},"statements":{"total":91,"covered":35,"skipped":0,"pct":38.46},"branches":{"total":44,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/FormButtonWidget.tsx": {"lines":{"total":39,"covered":19,"skipped":0,"pct":48.72},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":40,"covered":20,"skipped":0,"pct":50},"branches":{"total":25,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/FormWidget.tsx": {"lines":{"total":47,"covered":17,"skipped":0,"pct":36.17},"functions":{"total":13,"covered":2,"skipped":0,"pct":15.38},"statements":{"total":51,"covered":18,"skipped":0,"pct":35.29},"branches":{"total":19,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/IconWidget.tsx": {"lines":{"total":23,"covered":17,"skipped":0,"pct":73.91},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":25,"covered":18,"skipped":0,"pct":72},"branches":{"total":7,"covered":2,"skipped":0,"pct":28.57}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/IframeWidget.tsx": {"lines":{"total":32,"covered":15,"skipped":0,"pct":46.88},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":34,"covered":16,"skipped":0,"pct":47.06},"branches":{"total":15,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ImageWidget.tsx": {"lines":{"total":24,"covered":16,"skipped":0,"pct":66.67},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":28,"covered":17,"skipped":0,"pct":60.71},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/InputWidget.tsx": {"lines":{"total":51,"covered":39,"skipped":0,"pct":76.47},"functions":{"total":12,"covered":7,"skipped":0,"pct":58.33},"statements":{"total":57,"covered":40,"skipped":0,"pct":70.18},"branches":{"total":32,"covered":11,"skipped":0,"pct":34.38}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/MapWidget.tsx": {"lines":{"total":60,"covered":29,"skipped":0,"pct":48.33},"functions":{"total":17,"covered":4,"skipped":0,"pct":23.53},"statements":{"total":63,"covered":30,"skipped":0,"pct":47.62},"branches":{"total":22,"covered":2,"skipped":0,"pct":9.09}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/MetaHOC.tsx": {"lines":{"total":59,"covered":44,"skipped":0,"pct":74.58},"functions":{"total":13,"covered":12,"skipped":0,"pct":92.31},"statements":{"total":68,"covered":51,"skipped":0,"pct":75},"branches":{"total":19,"covered":9,"skipped":0,"pct":47.37}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ModalWidget.tsx": {"lines":{"total":63,"covered":28,"skipped":0,"pct":44.44},"functions":{"total":14,"covered":2,"skipped":0,"pct":14.29},"statements":{"total":67,"covered":30,"skipped":0,"pct":44.78},"branches":{"total":21,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/RadioGroupWidget.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":28,"covered":23,"skipped":0,"pct":82.14},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/RichTextEditorWidget.tsx": {"lines":{"total":37,"covered":27,"skipped":0,"pct":72.97},"functions":{"total":12,"covered":6,"skipped":0,"pct":50},"statements":{"total":39,"covered":28,"skipped":0,"pct":71.79},"branches":{"total":9,"covered":2,"skipped":0,"pct":22.22}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/SkeletonWidget.tsx": {"lines":{"total":15,"covered":13,"skipped":0,"pct":86.67},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":16,"covered":14,"skipped":0,"pct":87.5},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/SwitchWidget.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":27,"covered":25,"skipped":0,"pct":92.59},"branches":{"total":5,"covered":3,"skipped":0,"pct":60}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/TextWidget.tsx": {"lines":{"total":17,"covered":15,"skipped":0,"pct":88.24},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":18,"covered":16,"skipped":0,"pct":88.89},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/VideoWidget.tsx": {"lines":{"total":37,"covered":27,"skipped":0,"pct":72.97},"functions":{"total":14,"covered":5,"skipped":0,"pct":35.71},"statements":{"total":45,"covered":28,"skipped":0,"pct":62.22},"branches":{"total":5,"covered":2,"skipped":0,"pct":40}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ChartWidget/index.tsx": {"lines":{"total":25,"covered":19,"skipped":0,"pct":76},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":27,"covered":20,"skipped":0,"pct":74.07},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ChartWidget/propertyConfig.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/ListComponent.tsx": {"lines":{"total":15,"covered":10,"skipped":0,"pct":66.67},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":15,"covered":10,"skipped":0,"pct":66.67},"branches":{"total":18,"covered":11,"skipped":0,"pct":61.11}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/ListPagination.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/ListPropertyPaneConfig.ts": {"lines":{"total":12,"covered":6,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":12,"covered":6,"skipped":0,"pct":50},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/ListWidget.tsx": {"lines":{"total":228,"covered":87,"skipped":0,"pct":38.16},"functions":{"total":43,"covered":12,"skipped":0,"pct":27.91},"statements":{"total":242,"covered":94,"skipped":0,"pct":38.84},"branches":{"total":105,"covered":24,"skipped":0,"pct":22.86}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/derived.js": {"lines":{"total":44,"covered":27,"skipped":0,"pct":61.36},"functions":{"total":10,"covered":7,"skipped":0,"pct":70},"statements":{"total":45,"covered":28,"skipped":0,"pct":62.22},"branches":{"total":24,"covered":10,"skipped":0,"pct":41.67}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/ListWidget/parseDerivedProperties.ts": {"lines":{"total":13,"covered":5,"skipped":0,"pct":38.46},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":5,"skipped":0,"pct":38.46},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/RateWidget/index.tsx": {"lines":{"total":25,"covered":21,"skipped":0,"pct":84},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":27,"covered":22,"skipped":0,"pct":81.48},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/TableWidget/TablePropertyPaneConfig.ts": {"lines":{"total":71,"covered":29,"skipped":0,"pct":40.85},"functions":{"total":13,"covered":7,"skipped":0,"pct":53.85},"statements":{"total":75,"covered":29,"skipped":0,"pct":38.67},"branches":{"total":51,"covered":7,"skipped":0,"pct":13.73}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/TableWidget/derived.js": {"lines":{"total":171,"covered":92,"skipped":0,"pct":53.8},"functions":{"total":37,"covered":14,"skipped":0,"pct":37.84},"statements":{"total":188,"covered":102,"skipped":0,"pct":54.26},"branches":{"total":144,"covered":81,"skipped":0,"pct":56.25}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/TableWidget/index.tsx": {"lines":{"total":345,"covered":34,"skipped":0,"pct":9.86},"functions":{"total":49,"covered":5,"skipped":0,"pct":10.2},"statements":{"total":380,"covered":35,"skipped":0,"pct":9.21},"branches":{"total":253,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/TableWidget/parseDerivedProperties.ts": {"lines":{"total":13,"covered":5,"skipped":0,"pct":38.46},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":5,"skipped":0,"pct":38.46},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/Tabs/TabsMigrator.tsx": {"lines":{"total":23,"covered":17,"skipped":0,"pct":73.91},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":24,"covered":18,"skipped":0,"pct":75},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} -,"/Users/hetunandu/code/appsmith/app/client/src/widgets/Tabs/TabsWidget.tsx": {"lines":{"total":127,"covered":87,"skipped":0,"pct":68.5},"functions":{"total":28,"covered":17,"skipped":0,"pct":60.71},"statements":{"total":134,"covered":93,"skipped":0,"pct":69.4},"branches":{"total":93,"covered":43,"skipped":0,"pct":46.24}} -,"/Users/hetunandu/code/appsmith/app/client/src/workers/DataTreeEvaluator.ts": {"lines":{"total":450,"covered":399,"skipped":0,"pct":88.67},"functions":{"total":71,"covered":62,"skipped":0,"pct":87.32},"statements":{"total":487,"covered":431,"skipped":0,"pct":88.5},"branches":{"total":197,"covered":154,"skipped":0,"pct":78.17}} -,"/Users/hetunandu/code/appsmith/app/client/src/workers/evaluate.ts": {"lines":{"total":66,"covered":64,"skipped":0,"pct":96.97},"functions":{"total":17,"covered":16,"skipped":0,"pct":94.12},"statements":{"total":68,"covered":66,"skipped":0,"pct":97.06},"branches":{"total":16,"covered":11,"skipped":0,"pct":68.75}} -,"/Users/hetunandu/code/appsmith/app/client/src/workers/evaluationSubstitution.ts": {"lines":{"total":59,"covered":59,"skipped":0,"pct":100},"functions":{"total":10,"covered":10,"skipped":0,"pct":100},"statements":{"total":63,"covered":63,"skipped":0,"pct":100},"branches":{"total":22,"covered":21,"skipped":0,"pct":95.45}} -,"/Users/hetunandu/code/appsmith/app/client/src/workers/evaluationUtils.ts": {"lines":{"total":220,"covered":189,"skipped":0,"pct":85.91},"functions":{"total":48,"covered":41,"skipped":0,"pct":85.42},"statements":{"total":255,"covered":221,"skipped":0,"pct":86.67},"branches":{"total":127,"covered":89,"skipped":0,"pct":70.08}} -,"/Users/hetunandu/code/appsmith/app/client/src/workers/validations.ts": {"lines":{"total":367,"covered":159,"skipped":0,"pct":43.32},"functions":{"total":49,"covered":23,"skipped":0,"pct":46.94},"statements":{"total":405,"covered":176,"skipped":0,"pct":43.46},"branches":{"total":313,"covered":117,"skipped":0,"pct":37.38}} -,"/Users/hetunandu/code/appsmith/app/client/test/customQueries.js": {"lines":{"total":19,"covered":18,"skipped":0,"pct":94.74},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":20,"covered":19,"skipped":0,"pct":95},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/sagas.ts": {"lines":{"total":30,"covered":30,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":30,"covered":30,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/testCommon.ts": {"lines":{"total":49,"covered":49,"skipped":0,"pct":100},"functions":{"total":10,"covered":10,"skipped":0,"pct":100},"statements":{"total":60,"covered":60,"skipped":0,"pct":100},"branches":{"total":6,"covered":3,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/test/testMockedWidgets.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":8,"covered":8,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/testUtils.tsx": {"lines":{"total":37,"covered":36,"skipped":0,"pct":97.3},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":40,"covered":38,"skipped":0,"pct":95},"branches":{"total":21,"covered":18,"skipped":0,"pct":85.71}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/WidgetFactoryUtils.ts": {"lines":{"total":16,"covered":15,"skipped":0,"pct":93.75},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ButtonFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/CanvasFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ChartFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/CheckboxFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ContainerFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/DatepickerFactory.ts": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/DividerFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/DropdownFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/FilepickerFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/FormButtonFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/FormFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/IconFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ImageFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/InputFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ListFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/MapFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/ModalFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/RadiogroupFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/RichTextFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/SkeletonFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/SwitchFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/TableFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/TabsFactory.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/TextFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/VideoFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} -,"/Users/hetunandu/code/appsmith/app/client/test/factories/Widgets/WidgetTypeFactories.ts": {"lines":{"total":26,"covered":26,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":26,"covered":26,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +{"total": {"lines":{"total":37834,"covered":20890,"skipped":0,"pct":55.21},"statements":{"total":42367,"covered":23179,"skipped":0,"pct":54.71},"functions":{"total":9151,"covered":3135,"skipped":0,"pct":34.26},"branches":{"total":22216,"covered":8200,"skipped":0,"pct":36.91}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/store.ts": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":20,"covered":17,"skipped":0,"pct":85},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/apiPaneActions.ts": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":28,"covered":19,"skipped":0,"pct":67.86},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/appCollabActions.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":11,"skipped":0,"pct":73.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/applicationActions.ts": {"lines":{"total":20,"covered":12,"skipped":0,"pct":60},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":31,"covered":23,"skipped":0,"pct":74.19},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/batchActions.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/canvasSelectionActions.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/commentActions.ts": {"lines":{"total":76,"covered":61,"skipped":0,"pct":80.26},"functions":{"total":48,"covered":22,"skipped":0,"pct":45.83},"statements":{"total":149,"covered":120,"skipped":0,"pct":80.54},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/controlActions.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":13,"covered":10,"skipped":0,"pct":76.92},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/crudInfoModalActions.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/datasourceActions.ts": {"lines":{"total":46,"covered":22,"skipped":0,"pct":47.83},"functions":{"total":20,"covered":0,"skipped":0,"pct":0},"statements":{"total":67,"covered":42,"skipped":0,"pct":62.69},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/debuggerActions.ts": {"lines":{"total":13,"covered":11,"skipped":0,"pct":84.62},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":31,"covered":23,"skipped":0,"pct":74.19},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/errorActions.ts": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/evaluationActions.ts": {"lines":{"total":18,"covered":9,"skipped":0,"pct":50},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":14,"skipped":0,"pct":60.87},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/explorerActions.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/gitSyncActions.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/globalSearchActions.ts": {"lines":{"total":21,"covered":17,"skipped":0,"pct":80.95},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":48,"covered":34,"skipped":0,"pct":70.83},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/helpActions.ts": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/importActions.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/initActions.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":10,"covered":9,"skipped":0,"pct":90},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/jsActionActions.ts": {"lines":{"total":33,"covered":18,"skipped":0,"pct":54.55},"functions":{"total":16,"covered":0,"skipped":0,"pct":0},"statements":{"total":50,"covered":34,"skipped":0,"pct":68},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/jsPaneActions.ts": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/metaActions.ts": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":11,"covered":9,"skipped":0,"pct":81.82},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/notificationActions.ts": {"lines":{"total":14,"covered":12,"skipped":0,"pct":85.71},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":34,"covered":23,"skipped":0,"pct":67.65},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/onboardingActions.ts": {"lines":{"total":23,"covered":13,"skipped":0,"pct":56.52},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":34,"covered":24,"skipped":0,"pct":70.59},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/orgActions.ts": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/pageActions.tsx": {"lines":{"total":66,"covered":39,"skipped":0,"pct":59.09},"functions":{"total":28,"covered":8,"skipped":0,"pct":28.57},"statements":{"total":98,"covered":68,"skipped":0,"pct":69.39},"branches":{"total":4,"covered":1,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/pluginActionActions.ts": {"lines":{"total":64,"covered":36,"skipped":0,"pct":56.25},"functions":{"total":32,"covered":1,"skipped":0,"pct":3.13},"statements":{"total":100,"covered":68,"skipped":0,"pct":68},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/pluginActions.ts": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":13,"skipped":0,"pct":65},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/propertyPaneActions.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":16,"covered":14,"skipped":0,"pct":87.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/providerActions.ts": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/queryPaneActions.ts": {"lines":{"total":7,"covered":4,"skipped":0,"pct":57.14},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":7,"skipped":0,"pct":70},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/tourActions.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/userActions.ts": {"lines":{"total":22,"covered":19,"skipped":0,"pct":86.36},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":53,"covered":36,"skipped":0,"pct":67.92},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/websocketActions.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":12,"skipped":0,"pct":70.59},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/widgetActions.tsx": {"lines":{"total":35,"covered":27,"skipped":0,"pct":77.14},"functions":{"total":15,"covered":8,"skipped":0,"pct":53.33},"statements":{"total":51,"covered":43,"skipped":0,"pct":84.31},"branches":{"total":4,"covered":1,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/widgetSelectionActions.ts": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":28,"covered":28,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/actions/widgetSidebarActions.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":14,"covered":11,"skipped":0,"pct":78.57},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/ActionAPI.tsx": {"lines":{"total":32,"covered":17,"skipped":0,"pct":53.13},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":33,"covered":18,"skipped":0,"pct":54.55},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/Api.ts": {"lines":{"total":27,"covered":23,"skipped":0,"pct":85.19},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":27,"covered":23,"skipped":0,"pct":85.19},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/ApiUtils.ts": {"lines":{"total":49,"covered":27,"skipped":0,"pct":55.1},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":53,"covered":31,"skipped":0,"pct":58.49},"branches":{"total":35,"covered":13,"skipped":0,"pct":37.14}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/ApplicationApi.tsx": {"lines":{"total":41,"covered":23,"skipped":0,"pct":56.1},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":45,"covered":24,"skipped":0,"pct":53.33},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/CloudServicesApi.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":4,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/CollectionApi.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/CommentsAPI.tsx": {"lines":{"total":29,"covered":22,"skipped":0,"pct":75.86},"functions":{"total":12,"covered":5,"skipped":0,"pct":41.67},"statements":{"total":30,"covered":23,"skipped":0,"pct":76.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/DatasourcesApi.ts": {"lines":{"total":27,"covered":15,"skipped":0,"pct":55.56},"functions":{"total":10,"covered":1,"skipped":0,"pct":10},"statements":{"total":28,"covered":16,"skipped":0,"pct":57.14},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/ImportApi.ts": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/JSActionAPI.tsx": {"lines":{"total":22,"covered":13,"skipped":0,"pct":59.09},"functions":{"total":9,"covered":1,"skipped":0,"pct":11.11},"statements":{"total":23,"covered":14,"skipped":0,"pct":60.87},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/NotificationsAPI.tsx": {"lines":{"total":16,"covered":12,"skipped":0,"pct":75},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":17,"covered":13,"skipped":0,"pct":76.47},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/OrgApi.ts": {"lines":{"total":31,"covered":17,"skipped":0,"pct":54.84},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":32,"covered":18,"skipped":0,"pct":56.25},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/PageApi.tsx": {"lines":{"total":48,"covered":31,"skipped":0,"pct":64.58},"functions":{"total":18,"covered":3,"skipped":0,"pct":16.67},"statements":{"total":50,"covered":32,"skipped":0,"pct":64},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/PluginApi.ts": {"lines":{"total":18,"covered":16,"skipped":0,"pct":88.89},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":19,"covered":17,"skipped":0,"pct":89.47},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/ProvidersApi.ts": {"lines":{"total":33,"covered":18,"skipped":0,"pct":54.55},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":35,"covered":20,"skipped":0,"pct":57.14},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/SaasApi.ts": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":10,"covered":8,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/UserApi.tsx": {"lines":{"total":50,"covered":32,"skipped":0,"pct":64},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":51,"covered":33,"skipped":0,"pct":64.71},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/api/WidgetSidebarApi.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/utils.ts": {"lines":{"total":45,"covered":40,"skipped":0,"pct":88.89},"functions":{"total":10,"covered":7,"skipped":0,"pct":70},"statements":{"total":55,"covered":50,"skipped":0,"pct":90.91},"branches":{"total":30,"covered":14,"skipped":0,"pct":46.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/AppComments/AppCommentThreads.tsx": {"lines":{"total":41,"covered":24,"skipped":0,"pct":58.54},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":42,"covered":25,"skipped":0,"pct":59.52},"branches":{"total":22,"covered":5,"skipped":0,"pct":22.73}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/AppComments/AppCommentsFilterPopover.tsx": {"lines":{"total":37,"covered":18,"skipped":0,"pct":48.65},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":39,"covered":18,"skipped":0,"pct":46.15},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/AppComments/AppCommentsPlaceholder.tsx": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":6,"skipped":0,"pct":75},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentCard/CommentCard.tsx": {"lines":{"total":168,"covered":121,"skipped":0,"pct":72.02},"functions":{"total":42,"covered":18,"skipped":0,"pct":42.86},"statements":{"total":180,"covered":129,"skipped":0,"pct":71.67},"branches":{"total":125,"covered":74,"skipped":0,"pct":59.2}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentCard/CommentContextMenu.tsx": {"lines":{"total":47,"covered":38,"skipped":0,"pct":80.85},"functions":{"total":12,"covered":4,"skipped":0,"pct":33.33},"statements":{"total":50,"covered":40,"skipped":0,"pct":80},"branches":{"total":22,"covered":18,"skipped":0,"pct":81.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentCard/ResolveCommentButton.tsx": {"lines":{"total":26,"covered":24,"skipped":0,"pct":92.31},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":28,"covered":26,"skipped":0,"pct":92.86},"branches":{"total":10,"covered":7,"skipped":0,"pct":70}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentThread/CommentThread.tsx": {"lines":{"total":63,"covered":62,"skipped":0,"pct":98.41},"functions":{"total":14,"covered":12,"skipped":0,"pct":85.71},"statements":{"total":67,"covered":64,"skipped":0,"pct":95.52},"branches":{"total":99,"covered":64,"skipped":0,"pct":64.65}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentThread/ScrollToLatest.tsx": {"lines":{"total":13,"covered":8,"skipped":0,"pct":61.54},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":8,"skipped":0,"pct":57.14},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/CommentThread/connectedCommentThread.tsx": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":6,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/AddCommentInput.tsx": {"lines":{"total":142,"covered":95,"skipped":0,"pct":66.9},"functions":{"total":23,"covered":14,"skipped":0,"pct":60.87},"statements":{"total":164,"covered":107,"skipped":0,"pct":65.24},"branches":{"total":115,"covered":21,"skipped":0,"pct":18.26}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/Comments.tsx": {"lines":{"total":34,"covered":34,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":38,"covered":37,"skipped":0,"pct":97.37},"branches":{"total":10,"covered":9,"skipped":0,"pct":90}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/InlineCommentPin.tsx": {"lines":{"total":80,"covered":72,"skipped":0,"pct":90},"functions":{"total":18,"covered":17,"skipped":0,"pct":94.44},"statements":{"total":87,"covered":77,"skipped":0,"pct":88.51},"branches":{"total":58,"covered":41,"skipped":0,"pct":70.69}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/OverlayCommentsWrapper.tsx": {"lines":{"total":39,"covered":31,"skipped":0,"pct":79.49},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":40,"covered":31,"skipped":0,"pct":77.5},"branches":{"total":12,"covered":8,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/StyledComponents.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/UnpublishedCommentThread.tsx": {"lines":{"total":32,"covered":28,"skipped":0,"pct":87.5},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":36,"covered":32,"skipped":0,"pct":88.89},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/inlineComments/useOrgUsers.tsx": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":13,"covered":10,"skipped":0,"pct":76.92}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/tests/setMockPages.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/comments/tour/commentsTourSteps.ts": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/AppIcon.tsx": {"lines":{"total":276,"covered":88,"skipped":0,"pct":31.88},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":277,"covered":88,"skipped":0,"pct":31.77},"branches":{"total":91,"covered":2,"skipped":0,"pct":2.2}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Button.tsx": {"lines":{"total":126,"covered":118,"skipped":0,"pct":93.65},"functions":{"total":43,"covered":41,"skipped":0,"pct":95.35},"statements":{"total":128,"covered":119,"skipped":0,"pct":92.97},"branches":{"total":95,"covered":77,"skipped":0,"pct":81.05}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/ButtonTabComponent.tsx": {"lines":{"total":14,"covered":6,"skipped":0,"pct":42.86},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":6,"skipped":0,"pct":42.86},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Callout.tsx": {"lines":{"total":23,"covered":10,"skipped":0,"pct":43.48},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":10,"skipped":0,"pct":43.48},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Checkbox.tsx": {"lines":{"total":33,"covered":10,"skipped":0,"pct":30.3},"functions":{"total":16,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":10,"skipped":0,"pct":27.03},"branches":{"total":32,"covered":6,"skipped":0,"pct":18.75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/ColorPickerComponent.tsx": {"lines":{"total":35,"covered":14,"skipped":0,"pct":40},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":14,"skipped":0,"pct":37.84},"branches":{"total":22,"covered":14,"skipped":0,"pct":63.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/CopyToClipBoard.tsx": {"lines":{"total":21,"covered":7,"skipped":0,"pct":33.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":7,"skipped":0,"pct":30.43},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/CurrencyCodeDropdown.tsx": {"lines":{"total":24,"covered":14,"skipped":0,"pct":58.33},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":25,"covered":15,"skipped":0,"pct":60},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/DatePickerComponent.tsx": {"lines":{"total":17,"covered":8,"skipped":0,"pct":47.06},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/DialogComponent.tsx": {"lines":{"total":36,"covered":32,"skipped":0,"pct":88.89},"functions":{"total":22,"covered":20,"skipped":0,"pct":90.91},"statements":{"total":38,"covered":34,"skipped":0,"pct":89.47},"branches":{"total":22,"covered":14,"skipped":0,"pct":63.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/DraggableList.tsx": {"lines":{"total":49,"covered":23,"skipped":0,"pct":46.94},"functions":{"total":14,"covered":3,"skipped":0,"pct":21.43},"statements":{"total":61,"covered":25,"skipped":0,"pct":40.98},"branches":{"total":18,"covered":6,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/DraggableListComponent.tsx": {"lines":{"total":23,"covered":16,"skipped":0,"pct":69.57},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":29,"covered":18,"skipped":0,"pct":62.07},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Dropdown.tsx": {"lines":{"total":131,"covered":70,"skipped":0,"pct":53.44},"functions":{"total":53,"covered":14,"skipped":0,"pct":26.42},"statements":{"total":146,"covered":81,"skipped":0,"pct":55.48},"branches":{"total":187,"covered":74,"skipped":0,"pct":39.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/EditableText.tsx": {"lines":{"total":26,"covered":19,"skipped":0,"pct":73.08},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":33,"covered":26,"skipped":0,"pct":78.79},"branches":{"total":16,"covered":5,"skipped":0,"pct":31.25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/EditableTextSubComponent.tsx": {"lines":{"total":89,"covered":59,"skipped":0,"pct":66.29},"functions":{"total":32,"covered":25,"skipped":0,"pct":78.13},"statements":{"total":96,"covered":65,"skipped":0,"pct":67.71},"branches":{"total":88,"covered":39,"skipped":0,"pct":44.32}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/EmojiPicker.tsx": {"lines":{"total":21,"covered":18,"skipped":0,"pct":85.71},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":23,"covered":20,"skipped":0,"pct":86.96},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/EmojiReactions.tsx": {"lines":{"total":50,"covered":20,"skipped":0,"pct":40},"functions":{"total":17,"covered":2,"skipped":0,"pct":11.76},"statements":{"total":58,"covered":23,"skipped":0,"pct":39.66},"branches":{"total":54,"covered":15,"skipped":0,"pct":27.78}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/FilePicker.tsx": {"lines":{"total":156,"covered":70,"skipped":0,"pct":44.87},"functions":{"total":46,"covered":27,"skipped":0,"pct":58.7},"statements":{"total":166,"covered":80,"skipped":0,"pct":48.19},"branches":{"total":84,"covered":13,"skipped":0,"pct":15.48}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/GifPlayerComponent.tsx": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":9,"skipped":0,"pct":47.37},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/ISDCodeDropdown.tsx": {"lines":{"total":27,"covered":13,"skipped":0,"pct":48.15},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":28,"covered":14,"skipped":0,"pct":50},"branches":{"total":20,"covered":2,"skipped":0,"pct":10}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Icon.tsx": {"lines":{"total":302,"covered":166,"skipped":0,"pct":54.97},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":303,"covered":167,"skipped":0,"pct":55.12},"branches":{"total":127,"covered":48,"skipped":0,"pct":37.8}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/IconTabsComponent.tsx": {"lines":{"total":15,"covered":6,"skipped":0,"pct":40},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":6,"skipped":0,"pct":33.33},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/MentionsInput.tsx": {"lines":{"total":76,"covered":47,"skipped":0,"pct":61.84},"functions":{"total":23,"covered":6,"skipped":0,"pct":26.09},"statements":{"total":83,"covered":53,"skipped":0,"pct":63.86},"branches":{"total":54,"covered":21,"skipped":0,"pct":38.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Menu.tsx": {"lines":{"total":13,"covered":7,"skipped":0,"pct":53.85},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":7,"skipped":0,"pct":53.85},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/MenuDivider.tsx": {"lines":{"total":6,"covered":3,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":3,"skipped":0,"pct":50},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/MenuItem.tsx": {"lines":{"total":23,"covered":14,"skipped":0,"pct":60.87},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":14,"skipped":0,"pct":60.87},"branches":{"total":32,"covered":4,"skipped":0,"pct":12.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/MultiSwitch.tsx": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/MultiselectDropdown.tsx": {"lines":{"total":78,"covered":15,"skipped":0,"pct":19.23},"functions":{"total":40,"covered":0,"skipped":0,"pct":0},"statements":{"total":83,"covered":15,"skipped":0,"pct":18.07},"branches":{"total":84,"covered":14,"skipped":0,"pct":16.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Radio.tsx": {"lines":{"total":38,"covered":5,"skipped":0,"pct":13.16},"functions":{"total":27,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":5,"skipped":0,"pct":12.5},"branches":{"total":40,"covered":4,"skipped":0,"pct":10}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/ScrollIndicator.tsx": {"lines":{"total":42,"covered":34,"skipped":0,"pct":80.95},"functions":{"total":15,"covered":13,"skipped":0,"pct":86.67},"statements":{"total":46,"covered":38,"skipped":0,"pct":82.61},"branches":{"total":36,"covered":20,"skipped":0,"pct":55.56}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Spinner.tsx": {"lines":{"total":15,"covered":10,"skipped":0,"pct":66.67},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":10,"skipped":0,"pct":66.67},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/StepComponent.tsx": {"lines":{"total":22,"covered":9,"skipped":0,"pct":40.91},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":9,"skipped":0,"pct":40.91},"branches":{"total":12,"covered":8,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Switch.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Tabs.tsx": {"lines":{"total":43,"covered":12,"skipped":0,"pct":27.91},"functions":{"total":25,"covered":0,"skipped":0,"pct":0},"statements":{"total":45,"covered":12,"skipped":0,"pct":26.67},"branches":{"total":48,"covered":8,"skipped":0,"pct":16.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/TagInputComponent.tsx": {"lines":{"total":57,"covered":7,"skipped":0,"pct":12.28},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":61,"covered":7,"skipped":0,"pct":11.48},"branches":{"total":38,"covered":2,"skipped":0,"pct":5.26}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Text.tsx": {"lines":{"total":42,"covered":42,"skipped":0,"pct":100},"functions":{"total":14,"covered":14,"skipped":0,"pct":100},"statements":{"total":43,"covered":43,"skipped":0,"pct":100},"branches":{"total":28,"covered":21,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/TextInput.tsx": {"lines":{"total":77,"covered":55,"skipped":0,"pct":71.43},"functions":{"total":21,"covered":18,"skipped":0,"pct":85.71},"statements":{"total":82,"covered":60,"skipped":0,"pct":73.17},"branches":{"total":49,"covered":22,"skipped":0,"pct":44.9}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Toast.tsx": {"lines":{"total":46,"covered":36,"skipped":0,"pct":78.26},"functions":{"total":17,"covered":15,"skipped":0,"pct":88.24},"statements":{"total":46,"covered":36,"skipped":0,"pct":78.26},"branches":{"total":54,"covered":33,"skipped":0,"pct":61.11}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Toggle.tsx": {"lines":{"total":22,"covered":6,"skipped":0,"pct":27.27},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":24,"covered":6,"skipped":0,"pct":25},"branches":{"total":30,"covered":2,"skipped":0,"pct":6.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/Tooltip.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/TreeDropdown.tsx": {"lines":{"total":54,"covered":28,"skipped":0,"pct":51.85},"functions":{"total":23,"covered":7,"skipped":0,"pct":30.43},"statements":{"total":56,"covered":30,"skipped":0,"pct":53.57},"branches":{"total":34,"covered":20,"skipped":0,"pct":58.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/common.tsx": {"lines":{"total":41,"covered":27,"skipped":0,"pct":65.85},"functions":{"total":7,"covered":4,"skipped":0,"pct":57.14},"statements":{"total":46,"covered":32,"skipped":0,"pct":69.57},"branches":{"total":13,"covered":7,"skipped":0,"pct":53.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/ads/tour/TourTooltipWrapper.tsx": {"lines":{"total":32,"covered":30,"skipped":0,"pct":93.75},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":33,"covered":31,"skipped":0,"pct":93.94},"branches":{"total":38,"covered":17,"skipped":0,"pct":44.74}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/AudioRecorderComponent.tsx": {"lines":{"total":238,"covered":37,"skipped":0,"pct":15.55},"functions":{"total":43,"covered":3,"skipped":0,"pct":6.98},"statements":{"total":275,"covered":37,"skipped":0,"pct":13.45},"branches":{"total":90,"covered":14,"skipped":0,"pct":15.56}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/CenteredWrapper.tsx": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":3,"covered":2,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/ChartComponent.tsx": {"lines":{"total":158,"covered":75,"skipped":0,"pct":47.47},"functions":{"total":32,"covered":16,"skipped":0,"pct":50},"statements":{"total":170,"covered":84,"skipped":0,"pct":49.41},"branches":{"total":95,"covered":21,"skipped":0,"pct":22.11}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/CheckboxGroupComponent.tsx": {"lines":{"total":12,"covered":6,"skipped":0,"pct":50},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":6,"skipped":0,"pct":42.86},"branches":{"total":15,"covered":2,"skipped":0,"pct":13.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/ContainerComponent.tsx": {"lines":{"total":29,"covered":27,"skipped":0,"pct":93.1},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":29,"covered":27,"skipped":0,"pct":93.1},"branches":{"total":40,"covered":26,"skipped":0,"pct":65}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/CopyToClipBoard.tsx": {"lines":{"total":21,"covered":7,"skipped":0,"pct":33.33},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":7,"skipped":0,"pct":30.43},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/Dropdown.tsx": {"lines":{"total":22,"covered":7,"skipped":0,"pct":31.82},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":7,"skipped":0,"pct":31.82},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/FilePickerComponent.tsx": {"lines":{"total":20,"covered":10,"skipped":0,"pct":50},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":21,"covered":11,"skipped":0,"pct":52.38},"branches":{"total":8,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/IconButtonComponent.tsx": {"lines":{"total":34,"covered":21,"skipped":0,"pct":61.76},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":43,"covered":21,"skipped":0,"pct":48.84},"branches":{"total":102,"covered":8,"skipped":0,"pct":7.84}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/IconComponent.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/ImageComponent.tsx": {"lines":{"total":90,"covered":15,"skipped":0,"pct":16.67},"functions":{"total":24,"covered":2,"skipped":0,"pct":8.33},"statements":{"total":101,"covered":16,"skipped":0,"pct":15.84},"branches":{"total":64,"covered":10,"skipped":0,"pct":15.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/MapComponent.tsx": {"lines":{"total":41,"covered":13,"skipped":0,"pct":31.71},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":43,"covered":13,"skipped":0,"pct":30.23},"branches":{"total":33,"covered":8,"skipped":0,"pct":24.24}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/PickMyLocation.tsx": {"lines":{"total":21,"covered":8,"skipped":0,"pct":38.1},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":24,"covered":9,"skipped":0,"pct":37.5},"branches":{"total":16,"covered":4,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/PopoverVideo.tsx": {"lines":{"total":11,"covered":9,"skipped":0,"pct":81.82},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":9,"skipped":0,"pct":81.82},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/PositionedContainer.tsx": {"lines":{"total":28,"covered":28,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":30,"covered":30,"skipped":0,"pct":100},"branches":{"total":12,"covered":10,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/SearchComponent.tsx": {"lines":{"total":21,"covered":16,"skipped":0,"pct":76.19},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":22,"covered":17,"skipped":0,"pct":77.27},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/StyledHeader.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TabbedView.tsx": {"lines":{"total":14,"covered":6,"skipped":0,"pct":42.86},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":6,"skipped":0,"pct":42.86},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TabsComponent.tsx": {"lines":{"total":41,"covered":41,"skipped":0,"pct":100},"functions":{"total":19,"covered":19,"skipped":0,"pct":100},"statements":{"total":42,"covered":42,"skipped":0,"pct":100},"branches":{"total":36,"covered":30,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TextInputComponent.tsx": {"lines":{"total":35,"covered":10,"skipped":0,"pct":28.57},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":40,"covered":12,"skipped":0,"pct":30},"branches":{"total":27,"covered":4,"skipped":0,"pct":14.81}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/VideoComponent.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/MenuButtonComponent/index.tsx": {"lines":{"total":63,"covered":19,"skipped":0,"pct":30.16},"functions":{"total":19,"covered":0,"skipped":0,"pct":0},"statements":{"total":71,"covered":19,"skipped":0,"pct":26.76},"branches":{"total":151,"covered":10,"skipped":0,"pct":6.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/MultiSelectComponent/index.styled.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":10,"covered":10,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/MultiSelectComponent/index.tsx": {"lines":{"total":48,"covered":9,"skipped":0,"pct":18.75},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":52,"covered":9,"skipped":0,"pct":17.31},"branches":{"total":38,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/AutoToolTipComponent.tsx": {"lines":{"total":29,"covered":9,"skipped":0,"pct":31.03},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":9,"skipped":0,"pct":27.27},"branches":{"total":28,"covered":4,"skipped":0,"pct":14.29}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/CascadeFields.tsx": {"lines":{"total":121,"covered":36,"skipped":0,"pct":29.75},"functions":{"total":32,"covered":1,"skipped":0,"pct":3.13},"statements":{"total":128,"covered":36,"skipped":0,"pct":28.13},"branches":{"total":73,"covered":18,"skipped":0,"pct":24.66}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/CommonUtilities.ts": {"lines":{"total":32,"covered":28,"skipped":0,"pct":87.5},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":35,"covered":31,"skipped":0,"pct":88.57},"branches":{"total":47,"covered":23,"skipped":0,"pct":48.94}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/Constants.ts": {"lines":{"total":62,"covered":53,"skipped":0,"pct":85.48},"functions":{"total":23,"covered":21,"skipped":0,"pct":91.3},"statements":{"total":62,"covered":53,"skipped":0,"pct":85.48},"branches":{"total":34,"covered":25,"skipped":0,"pct":73.53}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/Table.tsx": {"lines":{"total":82,"covered":50,"skipped":0,"pct":60.98},"functions":{"total":18,"covered":7,"skipped":0,"pct":38.89},"statements":{"total":86,"covered":53,"skipped":0,"pct":61.63},"branches":{"total":54,"covered":21,"skipped":0,"pct":38.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableAction.tsx": {"lines":{"total":14,"covered":10,"skipped":0,"pct":71.43},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":12,"covered":7,"skipped":0,"pct":58.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableDataDownload.tsx": {"lines":{"total":62,"covered":21,"skipped":0,"pct":33.87},"functions":{"total":11,"covered":1,"skipped":0,"pct":9.09},"statements":{"total":66,"covered":23,"skipped":0,"pct":34.85},"branches":{"total":36,"covered":5,"skipped":0,"pct":13.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableFilterPane.tsx": {"lines":{"total":39,"covered":24,"skipped":0,"pct":61.54},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":41,"covered":25,"skipped":0,"pct":60.98},"branches":{"total":9,"covered":2,"skipped":0,"pct":22.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableFilterPaneContent.tsx": {"lines":{"total":51,"covered":16,"skipped":0,"pct":31.37},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":53,"covered":16,"skipped":0,"pct":30.19},"branches":{"total":41,"covered":12,"skipped":0,"pct":29.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableFilters.tsx": {"lines":{"total":35,"covered":27,"skipped":0,"pct":77.14},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":37,"covered":29,"skipped":0,"pct":78.38},"branches":{"total":21,"covered":5,"skipped":0,"pct":23.81}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableHeader.tsx": {"lines":{"total":37,"covered":17,"skipped":0,"pct":45.95},"functions":{"total":10,"covered":3,"skipped":0,"pct":30},"statements":{"total":39,"covered":19,"skipped":0,"pct":48.72},"branches":{"total":47,"covered":24,"skipped":0,"pct":51.06}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableHelpers.ts": {"lines":{"total":24,"covered":24,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":29,"covered":29,"skipped":0,"pct":100},"branches":{"total":12,"covered":9,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableStyledWrappers.tsx": {"lines":{"total":87,"covered":59,"skipped":0,"pct":67.82},"functions":{"total":56,"covered":28,"skipped":0,"pct":50},"statements":{"total":87,"covered":59,"skipped":0,"pct":67.82},"branches":{"total":272,"covered":57,"skipped":0,"pct":20.96}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/TableUtilities.tsx": {"lines":{"total":130,"covered":50,"skipped":0,"pct":38.46},"functions":{"total":38,"covered":6,"skipped":0,"pct":15.79},"statements":{"total":143,"covered":57,"skipped":0,"pct":39.86},"branches":{"total":103,"covered":24,"skipped":0,"pct":23.3}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/TableComponent/index.tsx": {"lines":{"total":74,"covered":19,"skipped":0,"pct":25.68},"functions":{"total":19,"covered":3,"skipped":0,"pct":15.79},"statements":{"total":77,"covered":21,"skipped":0,"pct":27.27},"branches":{"total":76,"covered":2,"skipped":0,"pct":2.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/header/DeployLinkButton.tsx": {"lines":{"total":16,"covered":11,"skipped":0,"pct":68.75},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":18,"covered":13,"skipped":0,"pct":72.22},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/header/ThreeDotsLoading.tsx": {"lines":{"total":5,"covered":4,"skipped":0,"pct":80},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":4,"skipped":0,"pct":80},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/help/CollapsibleHelp.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/appsmith/help/DocumentationSearch.tsx": {"lines":{"total":64,"covered":39,"skipped":0,"pct":60.94},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":72,"covered":43,"skipped":0,"pct":59.72},"branches":{"total":56,"covered":25,"skipped":0,"pct":44.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/ButtonComponent.tsx": {"lines":{"total":110,"covered":54,"skipped":0,"pct":49.09},"functions":{"total":27,"covered":11,"skipped":0,"pct":40.74},"statements":{"total":123,"covered":62,"skipped":0,"pct":50.41},"branches":{"total":191,"covered":44,"skipped":0,"pct":23.04}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/CheckboxComponent.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":15,"covered":11,"skipped":0,"pct":73.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/CloseButton.tsx": {"lines":{"total":9,"covered":5,"skipped":0,"pct":55.56},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":5,"skipped":0,"pct":55.56},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/DatePickerComponent.tsx": {"lines":{"total":72,"covered":19,"skipped":0,"pct":26.39},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":74,"covered":20,"skipped":0,"pct":27.03},"branches":{"total":69,"covered":2,"skipped":0,"pct":2.9}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/DatePickerComponent2.tsx": {"lines":{"total":80,"covered":19,"skipped":0,"pct":23.75},"functions":{"total":20,"covered":1,"skipped":0,"pct":5},"statements":{"total":84,"covered":20,"skipped":0,"pct":23.81},"branches":{"total":67,"covered":2,"skipped":0,"pct":2.99}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/DividerComponent.tsx": {"lines":{"total":42,"covered":29,"skipped":0,"pct":69.05},"functions":{"total":12,"covered":5,"skipped":0,"pct":41.67},"statements":{"total":48,"covered":31,"skipped":0,"pct":64.58},"branches":{"total":71,"covered":30,"skipped":0,"pct":42.25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/DropdownComponent.tsx": {"lines":{"total":50,"covered":22,"skipped":0,"pct":44},"functions":{"total":20,"covered":1,"skipped":0,"pct":5},"statements":{"total":52,"covered":23,"skipped":0,"pct":44.23},"branches":{"total":41,"covered":8,"skipped":0,"pct":19.51}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/IframeComponent.tsx": {"lines":{"total":30,"covered":8,"skipped":0,"pct":26.67},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":32,"covered":8,"skipped":0,"pct":25},"branches":{"total":23,"covered":4,"skipped":0,"pct":17.39}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/ModalComponent.tsx": {"lines":{"total":29,"covered":10,"skipped":0,"pct":34.48},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":30,"covered":10,"skipped":0,"pct":33.33},"branches":{"total":26,"covered":4,"skipped":0,"pct":15.38}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/RadioGroupComponent.tsx": {"lines":{"total":15,"covered":11,"skipped":0,"pct":73.33},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":18,"covered":12,"skipped":0,"pct":66.67},"branches":{"total":13,"covered":4,"skipped":0,"pct":30.77}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/RateComponent.tsx": {"lines":{"total":32,"covered":12,"skipped":0,"pct":37.5},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":12,"skipped":0,"pct":32.43},"branches":{"total":22,"covered":4,"skipped":0,"pct":18.18}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/SwitchComponent.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":8,"covered":5,"skipped":0,"pct":62.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/TextComponent.tsx": {"lines":{"total":31,"covered":31,"skipped":0,"pct":100},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":32,"covered":32,"skipped":0,"pct":100},"branches":{"total":60,"covered":44,"skipped":0,"pct":73.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/InputComponent/index.tsx": {"lines":{"total":123,"covered":71,"skipped":0,"pct":57.72},"functions":{"total":41,"covered":26,"skipped":0,"pct":63.41},"statements":{"total":127,"covered":75,"skipped":0,"pct":59.06},"branches":{"total":166,"covered":76,"skipped":0,"pct":45.78}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/designSystems/blueprint/InputComponent/utilties.tsx": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionNameEditor.tsx": {"lines":{"total":65,"covered":18,"skipped":0,"pct":27.69},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":69,"covered":18,"skipped":0,"pct":26.09},"branches":{"total":59,"covered":2,"skipped":0,"pct":3.39}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ApiResponseView.tsx": {"lines":{"total":80,"covered":42,"skipped":0,"pct":52.5},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":82,"covered":42,"skipped":0,"pct":51.22},"branches":{"total":75,"covered":28,"skipped":0,"pct":37.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Button.tsx": {"lines":{"total":27,"covered":12,"skipped":0,"pct":44.44},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":13,"skipped":0,"pct":44.83},"branches":{"total":43,"covered":8,"skipped":0,"pct":18.6}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CloseEditor.tsx": {"lines":{"total":31,"covered":13,"skipped":0,"pct":41.94},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":31,"covered":13,"skipped":0,"pct":41.94},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Divider.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/DragLayerComponent.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":8,"covered":8,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":10,"covered":10,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/DraggableComponent.tsx": {"lines":{"total":61,"covered":61,"skipped":0,"pct":100},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":66,"covered":66,"skipped":0,"pct":100},"branches":{"total":46,"covered":41,"skipped":0,"pct":89.13}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/DropTargetComponent.tsx": {"lines":{"total":74,"covered":66,"skipped":0,"pct":89.19},"functions":{"total":11,"covered":10,"skipped":0,"pct":90.91},"statements":{"total":76,"covered":68,"skipped":0,"pct":89.47},"branches":{"total":49,"covered":32,"skipped":0,"pct":65.31}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/DropTargetUtils.ts": {"lines":{"total":9,"covered":9,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/DropdownComponent.tsx": {"lines":{"total":67,"covered":15,"skipped":0,"pct":22.39},"functions":{"total":17,"covered":1,"skipped":0,"pct":5.88},"statements":{"total":86,"covered":16,"skipped":0,"pct":18.6},"branches":{"total":62,"covered":8,"skipped":0,"pct":12.9}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/EditableText.tsx": {"lines":{"total":58,"covered":17,"skipped":0,"pct":29.31},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":63,"covered":17,"skipped":0,"pct":26.98},"branches":{"total":47,"covered":8,"skipped":0,"pct":17.02}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/EditorContextProvider.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ErrorBoundry.tsx": {"lines":{"total":19,"covered":14,"skipped":0,"pct":73.68},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":21,"covered":16,"skipped":0,"pct":76.19},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ErrorTooltip.tsx": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":8,"covered":8,"skipped":0,"pct":100},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/FormLabel.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/FormRow.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/HelperTooltip.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":7,"skipped":0,"pct":87.5},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/JSResponseView.tsx": {"lines":{"total":61,"covered":28,"skipped":0,"pct":45.9},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":65,"covered":28,"skipped":0,"pct":43.08},"branches":{"total":69,"covered":14,"skipped":0,"pct":20.29}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/LoadingOverlayScreen.tsx": {"lines":{"total":5,"covered":3,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":3,"skipped":0,"pct":60},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/PaneWrapper.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/PreventInteractionsOverlay.tsx": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ReadOnlyEditor.tsx": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ResizableComponent.tsx": {"lines":{"total":107,"covered":62,"skipped":0,"pct":57.94},"functions":{"total":12,"covered":8,"skipped":0,"pct":66.67},"statements":{"total":110,"covered":64,"skipped":0,"pct":58.18},"branches":{"total":88,"covered":18,"skipped":0,"pct":20.45}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ResizableUtils.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":10,"skipped":0,"pct":66.67},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ResizeStyledComponents.tsx": {"lines":{"total":28,"covered":28,"skipped":0,"pct":100},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":28,"covered":28,"skipped":0,"pct":100},"branches":{"total":46,"covered":46,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Sidebar.tsx": {"lines":{"total":24,"covered":24,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":24,"covered":24,"skipped":0,"pct":100},"branches":{"total":5,"covered":4,"skipped":0,"pct":80}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/SnipeableComponent.tsx": {"lines":{"total":27,"covered":21,"skipped":0,"pct":77.78},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":27,"covered":21,"skipped":0,"pct":77.78},"branches":{"total":11,"covered":3,"skipped":0,"pct":27.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Spinner.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/StoreAsDatasource.tsx": {"lines":{"total":16,"covered":10,"skipped":0,"pct":62.5},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":10,"skipped":0,"pct":62.5},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionCreator/Fields.tsx": {"lines":{"total":280,"covered":75,"skipped":0,"pct":26.79},"functions":{"total":68,"covered":5,"skipped":0,"pct":7.35},"statements":{"total":286,"covered":79,"skipped":0,"pct":27.62},"branches":{"total":159,"covered":36,"skipped":0,"pct":22.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionCreator/index.tsx": {"lines":{"total":183,"covered":76,"skipped":0,"pct":41.53},"functions":{"total":25,"covered":10,"skipped":0,"pct":40},"statements":{"total":185,"covered":77,"skipped":0,"pct":41.62},"branches":{"total":118,"covered":9,"skipped":0,"pct":7.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionRightPane/Connections.tsx": {"lines":{"total":40,"covered":17,"skipped":0,"pct":42.5},"functions":{"total":20,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":17,"skipped":0,"pct":42.5},"branches":{"total":26,"covered":8,"skipped":0,"pct":30.77}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionRightPane/SuggestedWidgets.tsx": {"lines":{"total":46,"covered":20,"skipped":0,"pct":43.48},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":47,"covered":20,"skipped":0,"pct":42.55},"branches":{"total":15,"covered":4,"skipped":0,"pct":26.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/ActionRightPane/index.tsx": {"lines":{"total":84,"covered":31,"skipped":0,"pct":36.9},"functions":{"total":30,"covered":0,"skipped":0,"pct":0},"statements":{"total":91,"covered":31,"skipped":0,"pct":34.07},"branches":{"total":48,"covered":12,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/BindingPrompt.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":14,"covered":14,"skipped":0,"pct":100},"branches":{"total":16,"covered":12,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/BindingPromptHelper.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/EditorConfig.ts": {"lines":{"total":22,"covered":22,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":10,"covered":10,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/EvaluatedValuePopup.tsx": {"lines":{"total":102,"covered":68,"skipped":0,"pct":66.67},"functions":{"total":33,"covered":13,"skipped":0,"pct":39.39},"statements":{"total":118,"covered":78,"skipped":0,"pct":66.1},"branches":{"total":74,"covered":40,"skipped":0,"pct":54.05}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/codeEditorUtils.ts": {"lines":{"total":40,"covered":38,"skipped":0,"pct":95},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":46,"covered":44,"skipped":0,"pct":95.65},"branches":{"total":18,"covered":16,"skipped":0,"pct":88.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/commandsHelper.ts": {"lines":{"total":56,"covered":10,"skipped":0,"pct":17.86},"functions":{"total":10,"covered":1,"skipped":0,"pct":10},"statements":{"total":64,"covered":11,"skipped":0,"pct":17.19},"branches":{"total":24,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/generateQuickCommands.tsx": {"lines":{"total":75,"covered":21,"skipped":0,"pct":28},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":76,"covered":22,"skipped":0,"pct":28.95},"branches":{"total":32,"covered":2,"skipped":0,"pct":6.25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/hintHelpers.ts": {"lines":{"total":27,"covered":21,"skipped":0,"pct":77.78},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":28,"covered":22,"skipped":0,"pct":78.57},"branches":{"total":10,"covered":7,"skipped":0,"pct":70}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/index.tsx": {"lines":{"total":244,"covered":158,"skipped":0,"pct":64.75},"functions":{"total":40,"covered":20,"skipped":0,"pct":50},"statements":{"total":266,"covered":166,"skipped":0,"pct":62.41},"branches":{"total":154,"covered":54,"skipped":0,"pct":35.06}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/lintHelpers.ts": {"lines":{"total":55,"covered":49,"skipped":0,"pct":89.09},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":73,"covered":67,"skipped":0,"pct":91.78},"branches":{"total":28,"covered":22,"skipped":0,"pct":78.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/markHelpers.ts": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":6,"skipped":0,"pct":54.55},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/modes.ts": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":12,"covered":11,"skipped":0,"pct":91.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/CodeEditor/styledComponents.ts": {"lines":{"total":51,"covered":48,"skipped":0,"pct":94.12},"functions":{"total":29,"covered":29,"skipped":0,"pct":100},"statements":{"total":53,"covered":48,"skipped":0,"pct":90.57},"branches":{"total":88,"covered":53,"skipped":0,"pct":60.23}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/ContextualMenu.tsx": {"lines":{"total":70,"covered":33,"skipped":0,"pct":47.14},"functions":{"total":16,"covered":2,"skipped":0,"pct":12.5},"statements":{"total":70,"covered":33,"skipped":0,"pct":47.14},"branches":{"total":37,"covered":8,"skipped":0,"pct":21.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/DebugCTA.tsx": {"lines":{"total":35,"covered":20,"skipped":0,"pct":57.14},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":36,"covered":20,"skipped":0,"pct":55.56},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerLogs.tsx": {"lines":{"total":45,"covered":18,"skipped":0,"pct":40},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":54,"covered":18,"skipped":0,"pct":33.33},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerMessage.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/DebuggerTabs.tsx": {"lines":{"total":27,"covered":17,"skipped":0,"pct":62.96},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":30,"covered":17,"skipped":0,"pct":56.67},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/EntityDependecies.tsx": {"lines":{"total":72,"covered":26,"skipped":0,"pct":36.11},"functions":{"total":33,"covered":0,"skipped":0,"pct":0},"statements":{"total":74,"covered":26,"skipped":0,"pct":35.14},"branches":{"total":74,"covered":16,"skipped":0,"pct":21.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/EntityLink.tsx": {"lines":{"total":68,"covered":19,"skipped":0,"pct":27.94},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":70,"covered":19,"skipped":0,"pct":27.14},"branches":{"total":27,"covered":2,"skipped":0,"pct":7.41}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/Errors.tsx": {"lines":{"total":19,"covered":12,"skipped":0,"pct":63.16},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":12,"skipped":0,"pct":63.16},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/FilterHeader.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/LogItem.tsx": {"lines":{"total":55,"covered":21,"skipped":0,"pct":38.18},"functions":{"total":29,"covered":0,"skipped":0,"pct":0},"statements":{"total":59,"covered":22,"skipped":0,"pct":37.29},"branches":{"total":40,"covered":10,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/helpers.tsx": {"lines":{"total":51,"covered":40,"skipped":0,"pct":78.43},"functions":{"total":15,"covered":5,"skipped":0,"pct":33.33},"statements":{"total":61,"covered":47,"skipped":0,"pct":77.05},"branches":{"total":22,"covered":16,"skipped":0,"pct":72.73}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/hooks.ts": {"lines":{"total":96,"covered":29,"skipped":0,"pct":30.21},"functions":{"total":21,"covered":1,"skipped":0,"pct":4.76},"statements":{"total":110,"covered":34,"skipped":0,"pct":30.91},"branches":{"total":108,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/index.tsx": {"lines":{"total":40,"covered":36,"skipped":0,"pct":90},"functions":{"total":13,"covered":11,"skipped":0,"pct":84.62},"statements":{"total":41,"covered":36,"skipped":0,"pct":87.8},"branches":{"total":12,"covered":5,"skipped":0,"pct":41.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Debugger/Resizer/index.tsx": {"lines":{"total":36,"covered":6,"skipped":0,"pct":16.67},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":6,"skipped":0,"pct":15},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/ActionLink.tsx": {"lines":{"total":17,"covered":8,"skipped":0,"pct":47.06},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/AlgoliaSearchWrapper.tsx": {"lines":{"total":20,"covered":9,"skipped":0,"pct":45},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":9,"skipped":0,"pct":40.91},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/Description.tsx": {"lines":{"total":71,"covered":16,"skipped":0,"pct":22.54},"functions":{"total":35,"covered":0,"skipped":0,"pct":0},"statements":{"total":75,"covered":16,"skipped":0,"pct":21.33},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/GlobalSearchContext.tsx": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":3,"covered":3,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/GlobalSearchHotKeys.tsx": {"lines":{"total":18,"covered":14,"skipped":0,"pct":77.78},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":26,"covered":17,"skipped":0,"pct":65.38},"branches":{"total":7,"covered":3,"skipped":0,"pct":42.86}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/HelpBar.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":10,"covered":9,"skipped":0,"pct":90},"statements":{"total":28,"covered":26,"skipped":0,"pct":92.86},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/Highlight.tsx": {"lines":{"total":15,"covered":2,"skipped":0,"pct":13.33},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":2,"skipped":0,"pct":11.76},"branches":{"total":18,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/ResultsNotFound.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchBox.tsx": {"lines":{"total":59,"covered":17,"skipped":0,"pct":28.81},"functions":{"total":27,"covered":0,"skipped":0,"pct":0},"statements":{"total":68,"covered":17,"skipped":0,"pct":25},"branches":{"total":31,"covered":6,"skipped":0,"pct":19.35}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchModal.tsx": {"lines":{"total":9,"covered":8,"skipped":0,"pct":88.89},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SearchResults.tsx": {"lines":{"total":128,"covered":31,"skipped":0,"pct":24.22},"functions":{"total":50,"covered":0,"skipped":0,"pct":0},"statements":{"total":133,"covered":31,"skipped":0,"pct":23.31},"branches":{"total":79,"covered":22,"skipped":0,"pct":27.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SetSearchResults.tsx": {"lines":{"total":12,"covered":5,"skipped":0,"pct":41.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":5,"skipped":0,"pct":35.71},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SnippetRefinements.tsx": {"lines":{"total":19,"covered":7,"skipped":0,"pct":36.84},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":7,"skipped":0,"pct":33.33},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/SnippetsFilter.tsx": {"lines":{"total":44,"covered":9,"skipped":0,"pct":20.45},"functions":{"total":29,"covered":0,"skipped":0,"pct":0},"statements":{"total":49,"covered":9,"skipped":0,"pct":18.37},"branches":{"total":53,"covered":2,"skipped":0,"pct":3.77}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/githubHelper.ts": {"lines":{"total":13,"covered":6,"skipped":0,"pct":46.15},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":17,"covered":8,"skipped":0,"pct":47.06},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/index.tsx": {"lines":{"total":256,"covered":140,"skipped":0,"pct":54.69},"functions":{"total":66,"covered":24,"skipped":0,"pct":36.36},"statements":{"total":287,"covered":152,"skipped":0,"pct":52.96},"branches":{"total":249,"covered":37,"skipped":0,"pct":14.86}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/parseDocumentationContent.ts": {"lines":{"total":99,"covered":77,"skipped":0,"pct":77.78},"functions":{"total":16,"covered":14,"skipped":0,"pct":87.5},"statements":{"total":102,"covered":79,"skipped":0,"pct":77.45},"branches":{"total":86,"covered":39,"skipped":0,"pct":45.35}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/useRecentEntities.tsx": {"lines":{"total":36,"covered":18,"skipped":0,"pct":50},"functions":{"total":8,"covered":3,"skipped":0,"pct":37.5},"statements":{"total":37,"covered":18,"skipped":0,"pct":48.65},"branches":{"total":40,"covered":3,"skipped":0,"pct":7.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/GlobalSearch/utils.tsx": {"lines":{"total":99,"covered":70,"skipped":0,"pct":70.71},"functions":{"total":23,"covered":15,"skipped":0,"pct":65.22},"statements":{"total":122,"covered":88,"skipped":0,"pct":72.13},"branches":{"total":104,"covered":30,"skipped":0,"pct":28.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/HighlightedCode/index.tsx": {"lines":{"total":19,"covered":12,"skipped":0,"pct":63.16},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":19,"covered":12,"skipped":0,"pct":63.16},"branches":{"total":12,"covered":4,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/HighlightedCode/themes.ts": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Onboarding/Boxed.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":12,"covered":9,"skipped":0,"pct":75},"branches":{"total":7,"covered":2,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Onboarding/EndTour.tsx": {"lines":{"total":16,"covered":9,"skipped":0,"pct":56.25},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":9,"skipped":0,"pct":56.25},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Onboarding/Helper.tsx": {"lines":{"total":75,"covered":49,"skipped":0,"pct":65.33},"functions":{"total":23,"covered":5,"skipped":0,"pct":21.74},"statements":{"total":81,"covered":55,"skipped":0,"pct":67.9},"branches":{"total":111,"covered":40,"skipped":0,"pct":36.04}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Onboarding/Indicator.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":20,"covered":5,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/Onboarding/utils.tsx": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":14,"covered":8,"skipped":0,"pct":57.14},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/WidgetNameComponent/SettingsControl.tsx": {"lines":{"total":40,"covered":37,"skipped":0,"pct":92.5},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":40,"covered":37,"skipped":0,"pct":92.5},"branches":{"total":32,"covered":24,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/WidgetNameComponent/index.tsx": {"lines":{"total":63,"covered":60,"skipped":0,"pct":95.24},"functions":{"total":12,"covered":12,"skipped":0,"pct":100},"statements":{"total":65,"covered":62,"skipped":0,"pct":95.38},"branches":{"total":57,"covered":46,"skipped":0,"pct":80.7}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/CredentialsTooltip.tsx": {"lines":{"total":10,"covered":9,"skipped":0,"pct":90},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":9,"skipped":0,"pct":90},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/FormDialogComponent.tsx": {"lines":{"total":21,"covered":17,"skipped":0,"pct":80.95},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":23,"covered":19,"skipped":0,"pct":82.61},"branches":{"total":5,"covered":2,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/CheckboxField.tsx": {"lines":{"total":9,"covered":5,"skipped":0,"pct":55.56},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":5,"skipped":0,"pct":55.56},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/DropdownField.tsx": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/DropdownFieldWrapper.tsx": {"lines":{"total":17,"covered":4,"skipped":0,"pct":23.53},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":4,"skipped":0,"pct":21.05},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/DropdownWrapper.tsx": {"lines":{"total":12,"covered":3,"skipped":0,"pct":25},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":14,"covered":3,"skipped":0,"pct":21.43},"branches":{"total":9,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/DynamicDropdownField.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/DynamicTextField.tsx": {"lines":{"total":10,"covered":10,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/EmbeddedDatasourcePathField.tsx": {"lines":{"total":116,"covered":37,"skipped":0,"pct":31.9},"functions":{"total":25,"covered":1,"skipped":0,"pct":4},"statements":{"total":127,"covered":38,"skipped":0,"pct":29.92},"branches":{"total":75,"covered":2,"skipped":0,"pct":2.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/KeyValueFieldArray.tsx": {"lines":{"total":50,"covered":26,"skipped":0,"pct":52},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":26,"skipped":0,"pct":50.98},"branches":{"total":55,"covered":16,"skipped":0,"pct":29.09}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/NumberField.tsx": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":13,"covered":8,"skipped":0,"pct":61.54},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/RadioGroupField.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/RadioGroupWrapper.tsx": {"lines":{"total":17,"covered":3,"skipped":0,"pct":17.65},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":3,"skipped":0,"pct":15.79},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/RequestDropdownField.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/SelectField.tsx": {"lines":{"total":8,"covered":6,"skipped":0,"pct":75},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":6,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/TagListField.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/editorComponents/form/fields/TextField.tsx": {"lines":{"total":8,"covered":7,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/BaseControl.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/CheckboxControl.tsx": {"lines":{"total":13,"covered":10,"skipped":0,"pct":76.92},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":17,"covered":11,"skipped":0,"pct":64.71},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/DropDownControl.tsx": {"lines":{"total":28,"covered":16,"skipped":0,"pct":57.14},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":37,"covered":17,"skipped":0,"pct":45.95},"branches":{"total":23,"covered":4,"skipped":0,"pct":17.39}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/DynamicInputTextControl.tsx": {"lines":{"total":24,"covered":23,"skipped":0,"pct":95.83},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":29,"covered":28,"skipped":0,"pct":96.55},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/DynamicTextFieldControl.tsx": {"lines":{"total":50,"covered":49,"skipped":0,"pct":98},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":53,"covered":52,"skipped":0,"pct":98.11},"branches":{"total":17,"covered":12,"skipped":0,"pct":70.59}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/FieldArrayControl.tsx": {"lines":{"total":26,"covered":13,"skipped":0,"pct":50},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":13,"skipped":0,"pct":50},"branches":{"total":13,"covered":8,"skipped":0,"pct":61.54}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/FilePickerControl.tsx": {"lines":{"total":46,"covered":21,"skipped":0,"pct":45.65},"functions":{"total":12,"covered":2,"skipped":0,"pct":16.67},"statements":{"total":52,"covered":23,"skipped":0,"pct":44.23},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/FixedKeyInputControl.tsx": {"lines":{"total":29,"covered":12,"skipped":0,"pct":41.38},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":30,"covered":13,"skipped":0,"pct":43.33},"branches":{"total":9,"covered":2,"skipped":0,"pct":22.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/InputNumberControl.tsx": {"lines":{"total":25,"covered":13,"skipped":0,"pct":52},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":26,"covered":14,"skipped":0,"pct":53.85},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/InputTextControl.tsx": {"lines":{"total":38,"covered":16,"skipped":0,"pct":42.11},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":39,"covered":17,"skipped":0,"pct":43.59},"branches":{"total":18,"covered":2,"skipped":0,"pct":11.11}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/KeyValueArrayControl.tsx": {"lines":{"total":57,"covered":20,"skipped":0,"pct":35.09},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":60,"covered":21,"skipped":0,"pct":35},"branches":{"total":56,"covered":4,"skipped":0,"pct":7.14}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/KeyValueInputControl.tsx": {"lines":{"total":25,"covered":15,"skipped":0,"pct":60},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":27,"covered":16,"skipped":0,"pct":59.26},"branches":{"total":12,"covered":2,"skipped":0,"pct":16.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/StyledControls.tsx": {"lines":{"total":57,"covered":22,"skipped":0,"pct":38.6},"functions":{"total":35,"covered":0,"skipped":0,"pct":0},"statements":{"total":57,"covered":22,"skipped":0,"pct":38.6},"branches":{"total":34,"covered":28,"skipped":0,"pct":82.35}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/SwitchControl.tsx": {"lines":{"total":28,"covered":18,"skipped":0,"pct":64.29},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":41,"covered":21,"skipped":0,"pct":51.22},"branches":{"total":14,"covered":6,"skipped":0,"pct":42.86}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/formControls/utils.ts": {"lines":{"total":71,"covered":66,"skipped":0,"pct":92.96},"functions":{"total":13,"covered":13,"skipped":0,"pct":100},"statements":{"total":80,"covered":74,"skipped":0,"pct":92.5},"branches":{"total":59,"covered":45,"skipped":0,"pct":76.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ActionSelectorControl.tsx": {"lines":{"total":14,"covered":12,"skipped":0,"pct":85.71},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":16,"covered":14,"skipped":0,"pct":87.5},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/BaseControl.tsx": {"lines":{"total":11,"covered":7,"skipped":0,"pct":63.64},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":12,"covered":8,"skipped":0,"pct":66.67},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/BorderRadiusOptionsControl.tsx": {"lines":{"total":27,"covered":17,"skipped":0,"pct":62.96},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":31,"covered":18,"skipped":0,"pct":58.06},"branches":{"total":18,"covered":6,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/BoxShadowOptionsControl.tsx": {"lines":{"total":31,"covered":21,"skipped":0,"pct":67.74},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":34,"covered":22,"skipped":0,"pct":64.71},"branches":{"total":14,"covered":6,"skipped":0,"pct":42.86}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ButtonBorderRadiusControl.tsx": {"lines":{"total":25,"covered":17,"skipped":0,"pct":68},"functions":{"total":9,"covered":3,"skipped":0,"pct":33.33},"statements":{"total":27,"covered":18,"skipped":0,"pct":66.67},"branches":{"total":12,"covered":6,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ButtonTabControl.tsx": {"lines":{"total":21,"covered":10,"skipped":0,"pct":47.62},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":27,"covered":11,"skipped":0,"pct":40.74},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ChartDataControl.tsx": {"lines":{"total":61,"covered":26,"skipped":0,"pct":42.62},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":64,"covered":27,"skipped":0,"pct":42.19},"branches":{"total":37,"covered":14,"skipped":0,"pct":37.84}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/CodeEditorControl.tsx": {"lines":{"total":23,"covered":10,"skipped":0,"pct":43.48},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":28,"covered":11,"skipped":0,"pct":39.29},"branches":{"total":9,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ColorPickerControl.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ColumnActionSelectorControl.tsx": {"lines":{"total":42,"covered":18,"skipped":0,"pct":42.86},"functions":{"total":12,"covered":2,"skipped":0,"pct":16.67},"statements":{"total":47,"covered":19,"skipped":0,"pct":40.43},"branches":{"total":21,"covered":6,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/ComputeTablePropertyControl.tsx": {"lines":{"total":51,"covered":17,"skipped":0,"pct":33.33},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":53,"covered":18,"skipped":0,"pct":33.96},"branches":{"total":19,"covered":4,"skipped":0,"pct":21.05}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/DatePickerControl.tsx": {"lines":{"total":54,"covered":14,"skipped":0,"pct":25.93},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":57,"covered":15,"skipped":0,"pct":26.32},"branches":{"total":46,"covered":2,"skipped":0,"pct":4.35}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/DropDownControl.tsx": {"lines":{"total":23,"covered":9,"skipped":0,"pct":39.13},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":26,"covered":10,"skipped":0,"pct":38.46},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/IconAlignControl.tsx": {"lines":{"total":21,"covered":13,"skipped":0,"pct":61.9},"functions":{"total":8,"covered":2,"skipped":0,"pct":25},"statements":{"total":23,"covered":14,"skipped":0,"pct":60.87},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/IconSelectControl.tsx": {"lines":{"total":54,"covered":24,"skipped":0,"pct":44.44},"functions":{"total":15,"covered":3,"skipped":0,"pct":20},"statements":{"total":59,"covered":25,"skipped":0,"pct":42.37},"branches":{"total":30,"covered":8,"skipped":0,"pct":26.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/IconTabControl.tsx": {"lines":{"total":16,"covered":9,"skipped":0,"pct":56.25},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":22,"covered":10,"skipped":0,"pct":45.45},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/InputTextControl.tsx": {"lines":{"total":34,"covered":26,"skipped":0,"pct":76.47},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":36,"covered":28,"skipped":0,"pct":77.78},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/KeyValueComponent.tsx": {"lines":{"total":58,"covered":11,"skipped":0,"pct":18.97},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":62,"covered":11,"skipped":0,"pct":17.74},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/LocationSearchControl.tsx": {"lines":{"total":40,"covered":14,"skipped":0,"pct":35},"functions":{"total":9,"covered":2,"skipped":0,"pct":22.22},"statements":{"total":44,"covered":15,"skipped":0,"pct":34.09},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/MenuItemsControl.tsx": {"lines":{"total":72,"covered":20,"skipped":0,"pct":27.78},"functions":{"total":22,"covered":2,"skipped":0,"pct":9.09},"statements":{"total":76,"covered":21,"skipped":0,"pct":27.63},"branches":{"total":25,"covered":10,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/MultiSelectControl.tsx": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":23,"covered":11,"skipped":0,"pct":47.83},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/MultiSwitchControl.tsx": {"lines":{"total":16,"covered":11,"skipped":0,"pct":68.75},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":18,"covered":12,"skipped":0,"pct":66.67},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/OptionControl.tsx": {"lines":{"total":12,"covered":9,"skipped":0,"pct":75},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":14,"covered":10,"skipped":0,"pct":71.43},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/PrimaryColumnsControl.tsx": {"lines":{"total":96,"covered":22,"skipped":0,"pct":22.92},"functions":{"total":25,"covered":2,"skipped":0,"pct":8},"statements":{"total":103,"covered":23,"skipped":0,"pct":22.33},"branches":{"total":55,"covered":8,"skipped":0,"pct":14.55}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/StepControl.tsx": {"lines":{"total":19,"covered":9,"skipped":0,"pct":47.37},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":26,"covered":10,"skipped":0,"pct":38.46},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/StyledControls.tsx": {"lines":{"total":77,"covered":52,"skipped":0,"pct":67.53},"functions":{"total":48,"covered":23,"skipped":0,"pct":47.92},"statements":{"total":77,"covered":52,"skipped":0,"pct":67.53},"branches":{"total":64,"covered":49,"skipped":0,"pct":76.56}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/SwitchControl.tsx": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":14,"covered":13,"skipped":0,"pct":92.86},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/TabControl.tsx": {"lines":{"total":82,"covered":33,"skipped":0,"pct":40.24},"functions":{"total":24,"covered":5,"skipped":0,"pct":20.83},"statements":{"total":86,"covered":35,"skipped":0,"pct":40.7},"branches":{"total":25,"covered":12,"skipped":0,"pct":48}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/propertyControls/index.ts": {"lines":{"total":32,"covered":27,"skipped":0,"pct":84.38},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":28,"skipped":0,"pct":84.85},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/utils/CollapseComponent.tsx": {"lines":{"total":13,"covered":6,"skipped":0,"pct":46.15},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":6,"skipped":0,"pct":40},"branches":{"total":10,"covered":2,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/utils/EmptyDataState.tsx": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/utils/Skeleton.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/components/utils/TreeStructure.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/configs/index.ts": {"lines":{"total":42,"covered":41,"skipped":0,"pct":97.62},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":46,"covered":44,"skipped":0,"pct":95.65},"branches":{"total":104,"covered":88,"skipped":0,"pct":84.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ApiConstants.tsx": {"lines":{"total":25,"covered":24,"skipped":0,"pct":96},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":26,"covered":25,"skipped":0,"pct":96.15},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ApiEditorConstants.ts": {"lines":{"total":26,"covered":26,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":27,"covered":27,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppCollabConstants.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppConstants.ts": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":21,"covered":19,"skipped":0,"pct":90.48},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/BindingsConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ChartConstants.ts": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":8,"covered":8,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/Colors.tsx": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/CommentConstants.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/Currency.tsx": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/DatasourceEditorConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/DefaultTheme.tsx": {"lines":{"total":98,"covered":90,"skipped":0,"pct":91.84},"functions":{"total":28,"covered":20,"skipped":0,"pct":71.43},"statements":{"total":114,"covered":106,"skipped":0,"pct":92.98},"branches":{"total":40,"covered":36,"skipped":0,"pct":90}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/Explorer.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/FieldExpectedValue.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/Fonts.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/HelpConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ISDCodes.tsx": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/IconConstants.tsx": {"lines":{"total":9,"covered":9,"skipped":0,"pct":100},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":24,"covered":21,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/KeyboardShortcuts.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/Layers.tsx": {"lines":{"total":17,"covered":17,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":17,"covered":17,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/OnboardingConstants.tsx": {"lines":{"total":32,"covered":18,"skipped":0,"pct":56.25},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":32,"covered":18,"skipped":0,"pct":56.25},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/QueryEditorConstants.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ReduxActionConstants.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/ThirdPartyConstants.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/TourSteps.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/WebsocketConstants.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/WidgetConstants.tsx": {"lines":{"total":82,"covered":82,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":82,"covered":82,"skipped":0,"pct":100},"branches":{"total":12,"covered":12,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/WidgetValidation.ts": {"lines":{"total":16,"covered":16,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":16,"covered":16,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/forms.ts": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":19,"covered":19,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/messages.ts": {"lines":{"total":511,"covered":415,"skipped":0,"pct":81.21},"functions":{"total":370,"covered":97,"skipped":0,"pct":26.22},"statements":{"total":1103,"covered":830,"skipped":0,"pct":75.25},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/providerConstants.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/routes.ts": {"lines":{"total":152,"covered":119,"skipped":0,"pct":78.29},"functions":{"total":24,"covered":14,"skipped":0,"pct":58.33},"statements":{"total":177,"covered":142,"skipped":0,"pct":80.23},"branches":{"total":124,"covered":49,"skipped":0,"pct":39.52}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/userConstants.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/ActionConstants.tsx": {"lines":{"total":59,"covered":59,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":59,"covered":59,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiDependencyConfigs.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiEditorConfigs.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/ApiSettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/GoogleSheetsSettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/constants/AppsmithActionConstants/formConfig/QuerySettingsConfig.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/App.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":3,"covered":3,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Action/actionProperties.ts": {"lines":{"total":34,"covered":34,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":38,"covered":38,"skipped":0,"pct":100},"branches":{"total":22,"covered":20,"skipped":0,"pct":90.91}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Action/index.ts": {"lines":{"total":14,"covered":11,"skipped":0,"pct":78.57},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":17,"covered":12,"skipped":0,"pct":70.59},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/AppsmithConsole/index.ts": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/AppsmithConsole/logtype.ts": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/DataTree/actionTriggers.ts": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/DataTree/dataTreeAction.ts": {"lines":{"total":11,"covered":3,"skipped":0,"pct":27.27},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":4,"skipped":0,"pct":25},"branches":{"total":22,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/DataTree/dataTreeFactory.ts": {"lines":{"total":36,"covered":15,"skipped":0,"pct":41.67},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":37,"covered":16,"skipped":0,"pct":43.24},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/DataTree/dataTreeJSAction.ts": {"lines":{"total":30,"covered":3,"skipped":0,"pct":10},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":4,"skipped":0,"pct":12.12},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/DataTree/dataTreeWidget.ts": {"lines":{"total":32,"covered":27,"skipped":0,"pct":84.38},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":33,"covered":28,"skipped":0,"pct":84.85},"branches":{"total":4,"covered":1,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Datasource/RestAPIForm.ts": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Datasource/index.ts": {"lines":{"total":10,"covered":3,"skipped":0,"pct":30},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":5,"skipped":0,"pct":31.25},"branches":{"total":8,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Tour/index.ts": {"lines":{"total":3,"covered":3,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":3,"covered":3,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/entities/Widget/utils.ts": {"lines":{"total":65,"covered":63,"skipped":0,"pct":96.92},"functions":{"total":12,"covered":12,"skipped":0,"pct":100},"statements":{"total":67,"covered":65,"skipped":0,"pct":97.01},"branches":{"total":68,"covered":58,"skipped":0,"pct":85.29}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/globalStyles/tooltip.ts": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":5,"skipped":0,"pct":50},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/AlertIcons.tsx": {"lines":{"total":11,"covered":7,"skipped":0,"pct":63.64},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":7,"skipped":0,"pct":63.64},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/ControlIcons.tsx": {"lines":{"total":125,"covered":72,"skipped":0,"pct":57.6},"functions":{"total":61,"covered":8,"skipped":0,"pct":13.11},"statements":{"total":125,"covered":72,"skipped":0,"pct":57.6},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/FormIcons.tsx": {"lines":{"total":17,"covered":10,"skipped":0,"pct":58.82},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":17,"covered":10,"skipped":0,"pct":58.82},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/HeaderIcons.tsx": {"lines":{"total":13,"covered":9,"skipped":0,"pct":69.23},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/HelpIcons.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/MenuIcons.tsx": {"lines":{"total":45,"covered":27,"skipped":0,"pct":60},"functions":{"total":21,"covered":3,"skipped":0,"pct":14.29},"statements":{"total":45,"covered":27,"skipped":0,"pct":60},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/icons/WidgetIcons.tsx": {"lines":{"total":66,"covered":63,"skipped":0,"pct":95.45},"functions":{"total":32,"covered":29,"skipped":0,"pct":90.63},"statements":{"total":66,"covered":63,"skipped":0,"pct":95.45},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/mockResponses/CommentApiMockResponse.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/mockResponses/WidgetConfigResponse.tsx": {"lines":{"total":101,"covered":16,"skipped":0,"pct":15.84},"functions":{"total":19,"covered":0,"skipped":0,"pct":0},"statements":{"total":108,"covered":16,"skipped":0,"pct":14.81},"branches":{"total":40,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/mockResponses/WidgetSidebarResponse.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/normalizers/CanvasWidgetsNormalizer.tsx": {"lines":{"total":10,"covered":10,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/AppViewer/viewer/GetAppViewerHeaderCTA.tsx": {"lines":{"total":29,"covered":27,"skipped":0,"pct":93.1},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":29,"covered":27,"skipped":0,"pct":93.1},"branches":{"total":38,"covered":32,"skipped":0,"pct":84.21}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Applications/ForkApplicationModal.tsx": {"lines":{"total":38,"covered":32,"skipped":0,"pct":84.21},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":40,"covered":34,"skipped":0,"pct":85},"branches":{"total":13,"covered":6,"skipped":0,"pct":46.15}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Applications/ForkModalStyles.ts": {"lines":{"total":22,"covered":21,"skipped":0,"pct":95.45},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":22,"covered":21,"skipped":0,"pct":95.45},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Applications/permissionHelpers.tsx": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Applications/ProductUpdatesModal/ReleaseComponent.tsx": {"lines":{"total":69,"covered":17,"skipped":0,"pct":24.64},"functions":{"total":37,"covered":1,"skipped":0,"pct":2.7},"statements":{"total":75,"covered":17,"skipped":0,"pct":22.67},"branches":{"total":34,"covered":16,"skipped":0,"pct":47.06}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/ActionSettings.tsx": {"lines":{"total":18,"covered":7,"skipped":0,"pct":38.89},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":7,"skipped":0,"pct":38.89},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Canvas.tsx": {"lines":{"total":39,"covered":26,"skipped":0,"pct":66.67},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":41,"covered":27,"skipped":0,"pct":65.85},"branches":{"total":14,"covered":4,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorHeader.tsx": {"lines":{"total":101,"covered":90,"skipped":0,"pct":89.11},"functions":{"total":26,"covered":18,"skipped":0,"pct":69.23},"statements":{"total":105,"covered":94,"skipped":0,"pct":89.52},"branches":{"total":45,"covered":25,"skipped":0,"pct":55.56}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorSaveIndicator.tsx": {"lines":{"total":25,"covered":21,"skipped":0,"pct":84},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":27,"covered":23,"skipped":0,"pct":85.19},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EntityNotFoundPane.tsx": {"lines":{"total":11,"covered":8,"skipped":0,"pct":72.73},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":8,"skipped":0,"pct":72.73},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FormControl.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":12,"covered":6,"skipped":0,"pct":50},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GlobalHotKeys.tsx": {"lines":{"total":102,"covered":64,"skipped":0,"pct":62.75},"functions":{"total":37,"covered":20,"skipped":0,"pct":54.05},"statements":{"total":106,"covered":68,"skipped":0,"pct":64.15},"branches":{"total":33,"covered":10,"skipped":0,"pct":30.3}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/HelpButton.tsx": {"lines":{"total":22,"covered":21,"skipped":0,"pct":95.45},"functions":{"total":6,"covered":5,"skipped":0,"pct":83.33},"statements":{"total":24,"covered":23,"skipped":0,"pct":95.83},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/MainContainer.tsx": {"lines":{"total":21,"covered":21,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":21,"covered":21,"skipped":0,"pct":100},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/MainContainerLayoutControl.tsx": {"lines":{"total":29,"covered":25,"skipped":0,"pct":86.21},"functions":{"total":7,"covered":4,"skipped":0,"pct":57.14},"statements":{"total":29,"covered":25,"skipped":0,"pct":86.21},"branches":{"total":10,"covered":5,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Popper.tsx": {"lines":{"total":40,"covered":34,"skipped":0,"pct":85},"functions":{"total":9,"covered":8,"skipped":0,"pct":88.89},"statements":{"total":40,"covered":34,"skipped":0,"pct":85},"branches":{"total":40,"covered":29,"skipped":0,"pct":72.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPaneHelpButton.tsx": {"lines":{"total":19,"covered":16,"skipped":0,"pct":84.21},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":20,"covered":17,"skipped":0,"pct":85},"branches":{"total":12,"covered":5,"skipped":0,"pct":41.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPaneTitle.tsx": {"lines":{"total":51,"covered":42,"skipped":0,"pct":82.35},"functions":{"total":17,"covered":14,"skipped":0,"pct":82.35},"statements":{"total":54,"covered":45,"skipped":0,"pct":83.33},"branches":{"total":44,"covered":17,"skipped":0,"pct":38.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/RealtimeAppEditors.tsx": {"lines":{"total":26,"covered":11,"skipped":0,"pct":42.31},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":11,"skipped":0,"pct":42.31},"branches":{"total":15,"covered":2,"skipped":0,"pct":13.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/ToggleModeButton.tsx": {"lines":{"total":132,"covered":105,"skipped":0,"pct":79.55},"functions":{"total":30,"covered":24,"skipped":0,"pct":80},"statements":{"total":144,"covered":115,"skipped":0,"pct":79.86},"branches":{"total":65,"covered":36,"skipped":0,"pct":55.38}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/WidgetCard.tsx": {"lines":{"total":29,"covered":29,"skipped":0,"pct":100},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":29,"covered":29,"skipped":0,"pct":100},"branches":{"total":10,"covered":9,"skipped":0,"pct":90}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/WidgetSidebar.tsx": {"lines":{"total":75,"covered":62,"skipped":0,"pct":82.67},"functions":{"total":18,"covered":12,"skipped":0,"pct":66.67},"statements":{"total":77,"covered":64,"skipped":0,"pct":83.12},"branches":{"total":48,"covered":36,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/WidgetsEditor.tsx": {"lines":{"total":73,"covered":68,"skipped":0,"pct":93.15},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":76,"covered":71,"skipped":0,"pct":93.42},"branches":{"total":35,"covered":24,"skipped":0,"pct":68.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/WidgetsMultiSelectBox.tsx": {"lines":{"total":106,"covered":82,"skipped":0,"pct":77.36},"functions":{"total":29,"covered":20,"skipped":0,"pct":68.97},"statements":{"total":115,"covered":89,"skipped":0,"pct":77.39},"branches":{"total":50,"covered":34,"skipped":0,"pct":68}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/routes.tsx": {"lines":{"total":61,"covered":29,"skipped":0,"pct":47.54},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":70,"covered":30,"skipped":0,"pct":42.86},"branches":{"total":18,"covered":4,"skipped":0,"pct":22.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/utils.ts": {"lines":{"total":100,"covered":41,"skipped":0,"pct":41},"functions":{"total":18,"covered":3,"skipped":0,"pct":16.67},"statements":{"total":108,"covered":43,"skipped":0,"pct":39.81},"branches":{"total":73,"covered":28,"skipped":0,"pct":38.36}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/ApiRightPane.tsx": {"lines":{"total":45,"covered":22,"skipped":0,"pct":48.89},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":52,"covered":23,"skipped":0,"pct":44.23},"branches":{"total":34,"covered":16,"skipped":0,"pct":47.06}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/CurlImportForm.tsx": {"lines":{"total":30,"covered":24,"skipped":0,"pct":80},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":33,"covered":25,"skipped":0,"pct":75.76},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/Form.tsx": {"lines":{"total":153,"covered":60,"skipped":0,"pct":39.22},"functions":{"total":50,"covered":0,"skipped":0,"pct":0},"statements":{"total":160,"covered":60,"skipped":0,"pct":37.5},"branches":{"total":96,"covered":42,"skipped":0,"pct":43.75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/Pagination.tsx": {"lines":{"total":51,"covered":26,"skipped":0,"pct":50.98},"functions":{"total":25,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":26,"skipped":0,"pct":50.98},"branches":{"total":32,"covered":20,"skipped":0,"pct":62.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/PostBodyData.tsx": {"lines":{"total":31,"covered":19,"skipped":0,"pct":61.29},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":32,"covered":19,"skipped":0,"pct":59.38},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/ProviderTemplates.tsx": {"lines":{"total":93,"covered":35,"skipped":0,"pct":37.63},"functions":{"total":21,"covered":1,"skipped":0,"pct":4.76},"statements":{"total":102,"covered":36,"skipped":0,"pct":35.29},"branches":{"total":49,"covered":20,"skipped":0,"pct":40.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/RapidApiEditorForm.tsx": {"lines":{"total":46,"covered":29,"skipped":0,"pct":63.04},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":46,"covered":29,"skipped":0,"pct":63.04},"branches":{"total":39,"covered":18,"skipped":0,"pct":46.15}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/helpers.ts": {"lines":{"total":3,"covered":2,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/APIEditor/index.tsx": {"lines":{"total":93,"covered":31,"skipped":0,"pct":33.33},"functions":{"total":20,"covered":1,"skipped":0,"pct":5},"statements":{"total":104,"covered":32,"skipped":0,"pct":30.77},"branches":{"total":55,"covered":2,"skipped":0,"pct":3.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/BottomBar/index.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/BackButton.tsx": {"lines":{"total":20,"covered":12,"skipped":0,"pct":60},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":12,"skipped":0,"pct":60},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/Collapsible.tsx": {"lines":{"total":15,"covered":9,"skipped":0,"pct":60},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":19,"covered":10,"skipped":0,"pct":52.63},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/Connected.tsx": {"lines":{"total":25,"covered":16,"skipped":0,"pct":64},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":16,"skipped":0,"pct":64},"branches":{"total":30,"covered":6,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/DBForm.tsx": {"lines":{"total":73,"covered":34,"skipped":0,"pct":46.58},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":75,"covered":35,"skipped":0,"pct":46.67},"branches":{"total":27,"covered":8,"skipped":0,"pct":29.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/DatasourceSection.tsx": {"lines":{"total":39,"covered":11,"skipped":0,"pct":28.21},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":41,"covered":12,"skipped":0,"pct":29.27},"branches":{"total":30,"covered":8,"skipped":0,"pct":26.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/FormTitle.tsx": {"lines":{"total":45,"covered":13,"skipped":0,"pct":28.89},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":47,"covered":13,"skipped":0,"pct":27.66},"branches":{"total":39,"covered":2,"skipped":0,"pct":5.13}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/JSONtoForm.tsx": {"lines":{"total":138,"covered":23,"skipped":0,"pct":16.67},"functions":{"total":24,"covered":1,"skipped":0,"pct":4.17},"statements":{"total":153,"covered":24,"skipped":0,"pct":15.69},"branches":{"total":77,"covered":14,"skipped":0,"pct":18.18}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/NewActionButton.tsx": {"lines":{"total":37,"covered":15,"skipped":0,"pct":40.54},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":40,"covered":15,"skipped":0,"pct":37.5},"branches":{"total":58,"covered":2,"skipped":0,"pct":3.45}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/RestAPIDatasourceForm.tsx": {"lines":{"total":165,"covered":47,"skipped":0,"pct":28.48},"functions":{"total":32,"covered":1,"skipped":0,"pct":3.13},"statements":{"total":189,"covered":48,"skipped":0,"pct":25.4},"branches":{"total":110,"covered":20,"skipped":0,"pct":18.18}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/DataSourceEditor/index.tsx": {"lines":{"total":89,"covered":27,"skipped":0,"pct":30.34},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":100,"covered":29,"skipped":0,"pct":29},"branches":{"total":57,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorAppName/EditableAppName.tsx": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":7,"skipped":0,"pct":43.75},"branches":{"total":8,"covered":2,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorAppName/NavigationMenu.tsx": {"lines":{"total":6,"covered":3,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":3,"skipped":0,"pct":50},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorAppName/NavigationMenuData.ts": {"lines":{"total":38,"covered":23,"skipped":0,"pct":60.53},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":39,"covered":24,"skipped":0,"pct":61.54},"branches":{"total":10,"covered":1,"skipped":0,"pct":10}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorAppName/NavigationMenuItem.tsx": {"lines":{"total":50,"covered":13,"skipped":0,"pct":26},"functions":{"total":15,"covered":1,"skipped":0,"pct":6.67},"statements":{"total":54,"covered":13,"skipped":0,"pct":24.07},"branches":{"total":25,"covered":6,"skipped":0,"pct":24}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/EditorAppName/index.tsx": {"lines":{"total":65,"covered":30,"skipped":0,"pct":46.15},"functions":{"total":27,"covered":1,"skipped":0,"pct":3.7},"statements":{"total":74,"covered":38,"skipped":0,"pct":51.35},"branches":{"total":26,"covered":7,"skipped":0,"pct":26.92}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/ContextMenuTrigger.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/EntityExplorer.tsx": {"lines":{"total":48,"covered":41,"skipped":0,"pct":85.42},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":51,"covered":43,"skipped":0,"pct":84.31},"branches":{"total":20,"covered":8,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/ExplorerIcons.tsx": {"lines":{"total":60,"covered":53,"skipped":0,"pct":88.33},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":62,"covered":55,"skipped":0,"pct":88.71},"branches":{"total":12,"covered":7,"skipped":0,"pct":58.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/ExplorerSearch.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/ExplorerStyledComponents.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSDependencies.tsx": {"lines":{"total":28,"covered":25,"skipped":0,"pct":89.29},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":33,"covered":28,"skipped":0,"pct":84.85},"branches":{"total":16,"covered":15,"skipped":0,"pct":93.75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/TreeDropdown.tsx": {"lines":{"total":35,"covered":22,"skipped":0,"pct":62.86},"functions":{"total":9,"covered":4,"skipped":0,"pct":44.44},"statements":{"total":37,"covered":24,"skipped":0,"pct":64.86},"branches":{"total":26,"covered":14,"skipped":0,"pct":53.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/helpers.tsx": {"lines":{"total":29,"covered":17,"skipped":0,"pct":58.62},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":33,"covered":21,"skipped":0,"pct":63.64},"branches":{"total":78,"covered":27,"skipped":0,"pct":34.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/hooks.ts": {"lines":{"total":147,"covered":74,"skipped":0,"pct":50.34},"functions":{"total":43,"covered":26,"skipped":0,"pct":60.47},"statements":{"total":188,"covered":87,"skipped":0,"pct":46.28},"branches":{"total":71,"covered":20,"skipped":0,"pct":28.17}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/index.tsx": {"lines":{"total":23,"covered":20,"skipped":0,"pct":86.96},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":23,"covered":20,"skipped":0,"pct":86.96},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionEntity.tsx": {"lines":{"total":20,"covered":13,"skipped":0,"pct":65},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":13,"skipped":0,"pct":65},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionEntityContextMenu.tsx": {"lines":{"total":35,"covered":15,"skipped":0,"pct":42.86},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":35,"covered":15,"skipped":0,"pct":42.86},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Actions/ActionsGroup.tsx": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Actions/MoreActionsMenu.tsx": {"lines":{"total":35,"covered":12,"skipped":0,"pct":34.29},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":12,"skipped":0,"pct":31.58},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Actions/helpers.tsx": {"lines":{"total":53,"covered":26,"skipped":0,"pct":49.06},"functions":{"total":20,"covered":4,"skipped":0,"pct":20},"statements":{"total":62,"covered":29,"skipped":0,"pct":46.77},"branches":{"total":53,"covered":19,"skipped":0,"pct":35.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DataSourceContextMenu.tsx": {"lines":{"total":18,"covered":10,"skipped":0,"pct":55.56},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":10,"skipped":0,"pct":55.56},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceEntity.tsx": {"lines":{"total":46,"covered":17,"skipped":0,"pct":36.96},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":46,"covered":17,"skipped":0,"pct":36.96},"branches":{"total":18,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceField.tsx": {"lines":{"total":21,"covered":14,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":14,"skipped":0,"pct":66.67},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceStructure.tsx": {"lines":{"total":28,"covered":14,"skipped":0,"pct":50},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":31,"covered":14,"skipped":0,"pct":45.16},"branches":{"total":8,"covered":4,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/DatasourceStructureContainer.tsx": {"lines":{"total":17,"covered":9,"skipped":0,"pct":52.94},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":17,"covered":9,"skipped":0,"pct":52.94},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Datasources/QueryTemplates.tsx": {"lines":{"total":33,"covered":16,"skipped":0,"pct":48.48},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":34,"covered":16,"skipped":0,"pct":47.06},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/AddButton.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":16,"covered":16,"skipped":0,"pct":100},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/Collapse.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/CollapseToggle.tsx": {"lines":{"total":12,"covered":12,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":6,"covered":5,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/CurrentPageEntityProperties.tsx": {"lines":{"total":46,"covered":13,"skipped":0,"pct":28.26},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":48,"covered":13,"skipped":0,"pct":27.08},"branches":{"total":16,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/EntityProperties.tsx": {"lines":{"total":65,"covered":14,"skipped":0,"pct":21.54},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":66,"covered":14,"skipped":0,"pct":21.21},"branches":{"total":31,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/EntityProperty.tsx": {"lines":{"total":39,"covered":21,"skipped":0,"pct":53.85},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":39,"covered":21,"skipped":0,"pct":53.85},"branches":{"total":26,"covered":6,"skipped":0,"pct":23.08}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/Loader.tsx": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/Name.tsx": {"lines":{"total":72,"covered":42,"skipped":0,"pct":58.33},"functions":{"total":13,"covered":6,"skipped":0,"pct":46.15},"statements":{"total":76,"covered":45,"skipped":0,"pct":59.21},"branches":{"total":41,"covered":11,"skipped":0,"pct":26.83}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/Placeholder.tsx": {"lines":{"total":11,"covered":6,"skipped":0,"pct":54.55},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":6,"skipped":0,"pct":54.55},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Entity/index.tsx": {"lines":{"total":68,"covered":63,"skipped":0,"pct":92.65},"functions":{"total":20,"covered":17,"skipped":0,"pct":85},"statements":{"total":71,"covered":66,"skipped":0,"pct":92.96},"branches":{"total":54,"covered":43,"skipped":0,"pct":79.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSActions/JSActionContextMenu.tsx": {"lines":{"total":27,"covered":10,"skipped":0,"pct":37.04},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":28,"covered":10,"skipped":0,"pct":35.71},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSActions/JSActionEntity.tsx": {"lines":{"total":22,"covered":14,"skipped":0,"pct":63.64},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":22,"covered":14,"skipped":0,"pct":63.64},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSActions/JSActionGroup.tsx": {"lines":{"total":18,"covered":11,"skipped":0,"pct":61.11},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":18,"covered":11,"skipped":0,"pct":61.11},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSActions/MoreJSActionsMenu.tsx": {"lines":{"total":35,"covered":12,"skipped":0,"pct":34.29},"functions":{"total":17,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":12,"skipped":0,"pct":31.58},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/JSActions/helpers.tsx": {"lines":{"total":13,"covered":5,"skipped":0,"pct":38.46},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":6,"skipped":0,"pct":40},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/DBQueryGroup.tsx": {"lines":{"total":37,"covered":18,"skipped":0,"pct":48.65},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":38,"covered":18,"skipped":0,"pct":47.37},"branches":{"total":16,"covered":6,"skipped":0,"pct":37.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/Loading.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Onboarding/index.tsx": {"lines":{"total":24,"covered":12,"skipped":0,"pct":50},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":12,"skipped":0,"pct":46.15},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageContextMenu.tsx": {"lines":{"total":31,"covered":24,"skipped":0,"pct":77.42},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":32,"covered":24,"skipped":0,"pct":75},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageEntity.tsx": {"lines":{"total":33,"covered":30,"skipped":0,"pct":90.91},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":33,"covered":30,"skipped":0,"pct":90.91},"branches":{"total":10,"covered":4,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Pages/PageGroup.tsx": {"lines":{"total":38,"covered":31,"skipped":0,"pct":81.58},"functions":{"total":8,"covered":4,"skipped":0,"pct":50},"statements":{"total":39,"covered":31,"skipped":0,"pct":79.49},"branches":{"total":20,"covered":12,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/PluginGroup/PluginGroup.tsx": {"lines":{"total":25,"covered":22,"skipped":0,"pct":88},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":26,"covered":23,"skipped":0,"pct":88.46},"branches":{"total":57,"covered":35,"skipped":0,"pct":61.4}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetContextMenu.tsx": {"lines":{"total":37,"covered":27,"skipped":0,"pct":72.97},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":38,"covered":28,"skipped":0,"pct":73.68},"branches":{"total":12,"covered":2,"skipped":0,"pct":16.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetEntity.tsx": {"lines":{"total":49,"covered":49,"skipped":0,"pct":100},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":50,"covered":49,"skipped":0,"pct":98},"branches":{"total":47,"covered":39,"skipped":0,"pct":82.98}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Widgets/WidgetGroup.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":26,"covered":24,"skipped":0,"pct":92.31},"branches":{"total":47,"covered":33,"skipped":0,"pct":70.21}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Widgets/useNavigateToWidget.ts": {"lines":{"total":40,"covered":37,"skipped":0,"pct":92.5},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":42,"covered":38,"skipped":0,"pct":90.48},"branches":{"total":16,"covered":12,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/Explorer/Widgets/utils.ts": {"lines":{"total":6,"covered":6,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/Checklist.tsx": {"lines":{"total":133,"covered":128,"skipped":0,"pct":96.24},"functions":{"total":41,"covered":38,"skipped":0,"pct":92.68},"statements":{"total":133,"covered":128,"skipped":0,"pct":96.24},"branches":{"total":118,"covered":114,"skipped":0,"pct":96.61}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/IntroductionModal.tsx": {"lines":{"total":40,"covered":37,"skipped":0,"pct":92.5},"functions":{"total":10,"covered":8,"skipped":0,"pct":80},"statements":{"total":45,"covered":42,"skipped":0,"pct":93.33},"branches":{"total":28,"covered":28,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/Statusbar.tsx": {"lines":{"total":88,"covered":78,"skipped":0,"pct":88.64},"functions":{"total":12,"covered":10,"skipped":0,"pct":83.33},"statements":{"total":90,"covered":80,"skipped":0,"pct":88.89},"branches":{"total":58,"covered":46,"skipped":0,"pct":79.31}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/Tasks.tsx": {"lines":{"total":62,"covered":61,"skipped":0,"pct":98.39},"functions":{"total":12,"covered":11,"skipped":0,"pct":91.67},"statements":{"total":64,"covered":63,"skipped":0,"pct":98.44},"branches":{"total":28,"covered":27,"skipped":0,"pct":96.43}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/Utils.ts": {"lines":{"total":7,"covered":3,"skipped":0,"pct":42.86},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":4,"skipped":0,"pct":50},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/FirstTimeUserOnboarding/testUtils.ts": {"lines":{"total":22,"covered":22,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/index.tsx": {"lines":{"total":20,"covered":14,"skipped":0,"pct":70},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":14,"skipped":0,"pct":70},"branches":{"total":18,"covered":12,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/ActionCard.tsx": {"lines":{"total":15,"covered":11,"skipped":0,"pct":73.33},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":11,"skipped":0,"pct":73.33},"branches":{"total":12,"covered":12,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/ActionCards.tsx": {"lines":{"total":24,"covered":13,"skipped":0,"pct":54.17},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":13,"skipped":0,"pct":44.83},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/CrudInfoModal.tsx": {"lines":{"total":50,"covered":39,"skipped":0,"pct":78},"functions":{"total":13,"covered":5,"skipped":0,"pct":38.46},"statements":{"total":55,"covered":44,"skipped":0,"pct":80},"branches":{"total":31,"covered":27,"skipped":0,"pct":87.1}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/DataSourceOption.tsx": {"lines":{"total":45,"covered":16,"skipped":0,"pct":35.56},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":47,"covered":16,"skipped":0,"pct":34.04},"branches":{"total":36,"covered":8,"skipped":0,"pct":22.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/PageContent.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/constants.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GeneratePageForm.tsx": {"lines":{"total":202,"covered":40,"skipped":0,"pct":19.8},"functions":{"total":22,"covered":0,"skipped":0,"pct":0},"statements":{"total":226,"covered":40,"skipped":0,"pct":17.7},"branches":{"total":168,"covered":18,"skipped":0,"pct":10.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/GoogleSheetForm.tsx": {"lines":{"total":85,"covered":27,"skipped":0,"pct":31.76},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":95,"covered":27,"skipped":0,"pct":28.42},"branches":{"total":97,"covered":14,"skipped":0,"pct":14.43}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/hooks.ts": {"lines":{"total":160,"covered":15,"skipped":0,"pct":9.38},"functions":{"total":26,"covered":0,"skipped":0,"pct":0},"statements":{"total":207,"covered":21,"skipped":0,"pct":10.14},"branches":{"total":54,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/GeneratePage/components/GeneratePageForm/styles.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/ActiveDataSources.tsx": {"lines":{"total":28,"covered":16,"skipped":0,"pct":57.14},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":16,"skipped":0,"pct":55.17},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/AddDatasourceSecurely.tsx": {"lines":{"total":11,"covered":10,"skipped":0,"pct":90.91},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/DatasourceCard.tsx": {"lines":{"total":73,"covered":41,"skipped":0,"pct":56.16},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":73,"covered":41,"skipped":0,"pct":56.16},"branches":{"total":54,"covered":28,"skipped":0,"pct":51.85}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/DatasourceHome.tsx": {"lines":{"total":59,"covered":24,"skipped":0,"pct":40.68},"functions":{"total":12,"covered":1,"skipped":0,"pct":8.33},"statements":{"total":65,"covered":25,"skipped":0,"pct":38.46},"branches":{"total":39,"covered":8,"skipped":0,"pct":20.51}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/IntegrationsHomeScreen.tsx": {"lines":{"total":132,"covered":40,"skipped":0,"pct":30.3},"functions":{"total":21,"covered":1,"skipped":0,"pct":4.76},"statements":{"total":151,"covered":41,"skipped":0,"pct":27.15},"branches":{"total":84,"covered":10,"skipped":0,"pct":11.9}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/MockDataSources.tsx": {"lines":{"total":37,"covered":17,"skipped":0,"pct":45.95},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":17,"skipped":0,"pct":45.95},"branches":{"total":16,"covered":14,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/NewApi.tsx": {"lines":{"total":68,"covered":25,"skipped":0,"pct":36.76},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":72,"covered":25,"skipped":0,"pct":34.72},"branches":{"total":38,"covered":8,"skipped":0,"pct":21.05}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/NewQuery.tsx": {"lines":{"total":21,"covered":11,"skipped":0,"pct":52.38},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":23,"covered":12,"skipped":0,"pct":52.17},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/UnsupportedPluginDialog.tsx": {"lines":{"total":43,"covered":23,"skipped":0,"pct":53.49},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":45,"covered":23,"skipped":0,"pct":51.11},"branches":{"total":18,"covered":18,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/IntegrationEditor/index.tsx": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/JSEditor/Form.tsx": {"lines":{"total":43,"covered":21,"skipped":0,"pct":48.84},"functions":{"total":15,"covered":0,"skipped":0,"pct":0},"statements":{"total":45,"covered":21,"skipped":0,"pct":46.67},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/JSEditor/JSObjectNameEditor.tsx": {"lines":{"total":59,"covered":14,"skipped":0,"pct":23.73},"functions":{"total":16,"covered":0,"skipped":0,"pct":0},"statements":{"total":63,"covered":14,"skipped":0,"pct":22.22},"branches":{"total":45,"covered":2,"skipped":0,"pct":4.44}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/JSEditor/index.tsx": {"lines":{"total":26,"covered":16,"skipped":0,"pct":61.54},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":30,"covered":17,"skipped":0,"pct":56.67},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PagesEditor/ContextMenu.tsx": {"lines":{"total":33,"covered":21,"skipped":0,"pct":63.64},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":35,"covered":21,"skipped":0,"pct":60},"branches":{"total":20,"covered":12,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PagesEditor/EditName.tsx": {"lines":{"total":33,"covered":14,"skipped":0,"pct":42.42},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":14,"skipped":0,"pct":37.84},"branches":{"total":10,"covered":2,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PagesEditor/PageListItem.tsx": {"lines":{"total":36,"covered":21,"skipped":0,"pct":58.33},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":36,"covered":21,"skipped":0,"pct":58.33},"branches":{"total":18,"covered":10,"skipped":0,"pct":55.56}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PagesEditor/index.tsx": {"lines":{"total":43,"covered":22,"skipped":0,"pct":51.16},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":44,"covered":22,"skipped":0,"pct":50},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/ConnectDataCTA.tsx": {"lines":{"total":38,"covered":16,"skipped":0,"pct":42.11},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":39,"covered":17,"skipped":0,"pct":43.59},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/Generator.tsx": {"lines":{"total":17,"covered":16,"skipped":0,"pct":94.12},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":19,"covered":17,"skipped":0,"pct":89.47},"branches":{"total":10,"covered":7,"skipped":0,"pct":70}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/PanelPropertiesEditor.tsx": {"lines":{"total":74,"covered":14,"skipped":0,"pct":18.92},"functions":{"total":14,"covered":0,"skipped":0,"pct":0},"statements":{"total":76,"covered":14,"skipped":0,"pct":18.42},"branches":{"total":40,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyControl.tsx": {"lines":{"total":107,"covered":63,"skipped":0,"pct":58.88},"functions":{"total":12,"covered":3,"skipped":0,"pct":25},"statements":{"total":115,"covered":66,"skipped":0,"pct":57.39},"branches":{"total":72,"covered":29,"skipped":0,"pct":40.28}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyHelpLabel.tsx": {"lines":{"total":9,"covered":8,"skipped":0,"pct":88.89},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":9,"covered":8,"skipped":0,"pct":88.89},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/PropertyPaneConnections.tsx": {"lines":{"total":92,"covered":60,"skipped":0,"pct":65.22},"functions":{"total":34,"covered":16,"skipped":0,"pct":47.06},"statements":{"total":93,"covered":61,"skipped":0,"pct":65.59},"branches":{"total":110,"covered":34,"skipped":0,"pct":30.91}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/PropertySection.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":28,"covered":24,"skipped":0,"pct":85.71},"branches":{"total":14,"covered":8,"skipped":0,"pct":57.14}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/PropertyPane/index.tsx": {"lines":{"total":105,"covered":89,"skipped":0,"pct":84.76},"functions":{"total":27,"covered":19,"skipped":0,"pct":70.37},"statements":{"total":113,"covered":94,"skipped":0,"pct":83.19},"branches":{"total":114,"covered":79,"skipped":0,"pct":69.3}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/EditorJSONtoForm.tsx": {"lines":{"total":164,"covered":69,"skipped":0,"pct":42.07},"functions":{"total":36,"covered":0,"skipped":0,"pct":0},"statements":{"total":174,"covered":69,"skipped":0,"pct":39.66},"branches":{"total":143,"covered":48,"skipped":0,"pct":33.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/Form.tsx": {"lines":{"total":21,"covered":10,"skipped":0,"pct":47.62},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":10,"skipped":0,"pct":47.62},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/JSONViewer.tsx": {"lines":{"total":19,"covered":11,"skipped":0,"pct":57.89},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":20,"covered":12,"skipped":0,"pct":60},"branches":{"total":10,"covered":6,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/Table.tsx": {"lines":{"total":54,"covered":14,"skipped":0,"pct":25.93},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":57,"covered":14,"skipped":0,"pct":24.56},"branches":{"total":24,"covered":2,"skipped":0,"pct":8.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/TemplateMenu.tsx": {"lines":{"total":32,"covered":28,"skipped":0,"pct":87.5},"functions":{"total":9,"covered":7,"skipped":0,"pct":77.78},"statements":{"total":40,"covered":36,"skipped":0,"pct":90},"branches":{"total":15,"covered":12,"skipped":0,"pct":80}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/QueryEditor/index.tsx": {"lines":{"total":93,"covered":31,"skipped":0,"pct":33.33},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":101,"covered":32,"skipped":0,"pct":31.68},"branches":{"total":43,"covered":4,"skipped":0,"pct":9.3}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/ActionForm.tsx": {"lines":{"total":48,"covered":13,"skipped":0,"pct":27.08},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":51,"covered":13,"skipped":0,"pct":25.49},"branches":{"total":26,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/DatasourceCard.tsx": {"lines":{"total":36,"covered":22,"skipped":0,"pct":61.11},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":36,"covered":22,"skipped":0,"pct":61.11},"branches":{"total":34,"covered":18,"skipped":0,"pct":52.94}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/DatasourceForm.tsx": {"lines":{"total":91,"covered":37,"skipped":0,"pct":40.66},"functions":{"total":18,"covered":2,"skipped":0,"pct":11.11},"statements":{"total":99,"covered":38,"skipped":0,"pct":38.38},"branches":{"total":41,"covered":8,"skipped":0,"pct":19.51}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/ListView.tsx": {"lines":{"total":68,"covered":26,"skipped":0,"pct":38.24},"functions":{"total":16,"covered":1,"skipped":0,"pct":6.25},"statements":{"total":78,"covered":27,"skipped":0,"pct":34.62},"branches":{"total":25,"covered":8,"skipped":0,"pct":32}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/constants.ts": {"lines":{"total":27,"covered":27,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":31,"covered":31,"skipped":0,"pct":100},"branches":{"total":30,"covered":19,"skipped":0,"pct":63.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/SaaSEditor/routes.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/Editor/gitSync/QuickGitActions/index.tsx": {"lines":{"total":27,"covered":12,"skipped":0,"pct":44.44},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":27,"covered":12,"skipped":0,"pct":44.44},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/ArtBoard.tsx": {"lines":{"total":6,"covered":6,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CanvasDraggingArena.tsx": {"lines":{"total":22,"covered":22,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":23,"covered":23,"skipped":0,"pct":100},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CanvasMultiPointerArena.tsx": {"lines":{"total":87,"covered":16,"skipped":0,"pct":18.39},"functions":{"total":16,"covered":0,"skipped":0,"pct":0},"statements":{"total":92,"covered":16,"skipped":0,"pct":17.39},"branches":{"total":39,"covered":2,"skipped":0,"pct":5.13}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CanvasSelectionArena.tsx": {"lines":{"total":179,"covered":163,"skipped":0,"pct":91.06},"functions":{"total":29,"covered":26,"skipped":0,"pct":89.66},"statements":{"total":185,"covered":169,"skipped":0,"pct":91.35},"branches":{"total":181,"covered":130,"skipped":0,"pct":71.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/NotFound.tsx": {"lines":{"total":10,"covered":6,"skipped":0,"pct":60},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":6,"skipped":0,"pct":60},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/ProfileDropdown.tsx": {"lines":{"total":25,"covered":17,"skipped":0,"pct":68},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/ProfileImage.tsx": {"lines":{"total":18,"covered":16,"skipped":0,"pct":88.89},"functions":{"total":7,"covered":5,"skipped":0,"pct":71.43},"statements":{"total":20,"covered":18,"skipped":0,"pct":90},"branches":{"total":16,"covered":10,"skipped":0,"pct":62.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CustomizedDropdown/StyledComponents.tsx": {"lines":{"total":25,"covered":7,"skipped":0,"pct":28},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":7,"skipped":0,"pct":28},"branches":{"total":26,"covered":10,"skipped":0,"pct":38.46}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CustomizedDropdown/dropdownHelpers.tsx": {"lines":{"total":28,"covered":9,"skipped":0,"pct":32.14},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":29,"covered":10,"skipped":0,"pct":34.48},"branches":{"total":15,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/common/CustomizedDropdown/index.tsx": {"lines":{"total":31,"covered":15,"skipped":0,"pct":48.39},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":16,"skipped":0,"pct":48.48},"branches":{"total":28,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/organization/AppInviteUsersForm.tsx": {"lines":{"total":35,"covered":17,"skipped":0,"pct":48.57},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":35,"covered":17,"skipped":0,"pct":48.57},"branches":{"total":40,"covered":6,"skipped":0,"pct":15}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/organization/General.tsx": {"lines":{"total":47,"covered":35,"skipped":0,"pct":74.47},"functions":{"total":10,"covered":2,"skipped":0,"pct":20},"statements":{"total":47,"covered":35,"skipped":0,"pct":74.47},"branches":{"total":44,"covered":32,"skipped":0,"pct":72.73}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/organization/ManageUsers.tsx": {"lines":{"total":19,"covered":9,"skipped":0,"pct":47.37},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":9,"skipped":0,"pct":47.37},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/organization/OrgInviteUsersForm.tsx": {"lines":{"total":103,"covered":43,"skipped":0,"pct":41.75},"functions":{"total":27,"covered":0,"skipped":0,"pct":0},"statements":{"total":107,"covered":43,"skipped":0,"pct":40.19},"branches":{"total":100,"covered":24,"skipped":0,"pct":24}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/pages/organization/helpers.ts": {"lines":{"total":16,"covered":5,"skipped":0,"pct":31.25},"functions":{"total":10,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":8,"skipped":0,"pct":40},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/index.tsx": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/actionsReducer.tsx": {"lines":{"total":108,"covered":7,"skipped":0,"pct":6.48},"functions":{"total":53,"covered":0,"skipped":0,"pct":0},"statements":{"total":110,"covered":7,"skipped":0,"pct":6.36},"branches":{"total":50,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/appReducer.ts": {"lines":{"total":10,"covered":7,"skipped":0,"pct":70},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":10,"covered":7,"skipped":0,"pct":70},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/canvasWidgetsReducer.tsx": {"lines":{"total":11,"covered":10,"skipped":0,"pct":90.91},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/datasourceReducer.ts": {"lines":{"total":54,"covered":5,"skipped":0,"pct":9.26},"functions":{"total":36,"covered":0,"skipped":0,"pct":0},"statements":{"total":56,"covered":5,"skipped":0,"pct":8.93},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/index.ts": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/jsActionsReducer.tsx": {"lines":{"total":97,"covered":6,"skipped":0,"pct":6.19},"functions":{"total":46,"covered":0,"skipped":0,"pct":0},"statements":{"total":104,"covered":6,"skipped":0,"pct":5.77},"branches":{"total":46,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/jsExecutionsReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/metaReducer.ts": {"lines":{"total":28,"covered":12,"skipped":0,"pct":42.86},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":28,"covered":12,"skipped":0,"pct":42.86},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/pageListReducer.tsx": {"lines":{"total":45,"covered":9,"skipped":0,"pct":20},"functions":{"total":20,"covered":3,"skipped":0,"pct":15},"statements":{"total":51,"covered":9,"skipped":0,"pct":17.65},"branches":{"total":20,"covered":5,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/pluginsReducer.ts": {"lines":{"total":12,"covered":5,"skipped":0,"pct":41.67},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":12,"covered":5,"skipped":0,"pct":41.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/entityReducers/widgetConfigReducer.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/evaluationReducers/dependencyReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/evaluationReducers/formEvaluationReducer.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/evaluationReducers/index.ts": {"lines":{"total":6,"covered":6,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/evaluationReducers/loadingEntitiesReducer.ts": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/evaluationReducers/treeReducer.ts": {"lines":{"total":17,"covered":8,"skipped":0,"pct":47.06},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":22,"covered":8,"skipped":0,"pct":36.36},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/actionTabsReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/apiNameReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/apiPaneReducer.ts": {"lines":{"total":25,"covered":5,"skipped":0,"pct":20},"functions":{"total":18,"covered":0,"skipped":0,"pct":0},"statements":{"total":27,"covered":5,"skipped":0,"pct":18.52},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/appCollabReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/appViewReducer.tsx": {"lines":{"total":10,"covered":5,"skipped":0,"pct":50},"functions":{"total":5,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":5,"skipped":0,"pct":50},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/applicationsReducer.tsx": {"lines":{"total":79,"covered":9,"skipped":0,"pct":11.39},"functions":{"total":39,"covered":3,"skipped":0,"pct":7.69},"statements":{"total":82,"covered":9,"skipped":0,"pct":10.98},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/authReducer.ts": {"lines":{"total":11,"covered":5,"skipped":0,"pct":45.45},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":5,"skipped":0,"pct":45.45},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/canvasSelectionReducer.ts": {"lines":{"total":17,"covered":17,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":17,"covered":17,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/confirmRunActionReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/crudInfoModalReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/datasourceNameReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/datasourcePaneReducer.ts": {"lines":{"total":15,"covered":6,"skipped":0,"pct":40},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":6,"skipped":0,"pct":40},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/debuggerReducer.ts": {"lines":{"total":14,"covered":7,"skipped":0,"pct":50},"functions":{"total":7,"covered":1,"skipped":0,"pct":14.29},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/dragResizeReducer.ts": {"lines":{"total":43,"covered":39,"skipped":0,"pct":90.7},"functions":{"total":13,"covered":10,"skipped":0,"pct":76.92},"statements":{"total":44,"covered":39,"skipped":0,"pct":88.64},"branches":{"total":26,"covered":16,"skipped":0,"pct":61.54}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/editorReducer.tsx": {"lines":{"total":69,"covered":16,"skipped":0,"pct":23.19},"functions":{"total":24,"covered":6,"skipped":0,"pct":25},"statements":{"total":69,"covered":16,"skipped":0,"pct":23.19},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/errorReducer.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":9,"covered":7,"skipped":0,"pct":77.78},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/explorerReducer.ts": {"lines":{"total":19,"covered":10,"skipped":0,"pct":52.63},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":19,"covered":10,"skipped":0,"pct":52.63},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/gitSyncReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/globalSearchReducer.ts": {"lines":{"total":16,"covered":7,"skipped":0,"pct":43.75},"functions":{"total":10,"covered":1,"skipped":0,"pct":10},"statements":{"total":16,"covered":7,"skipped":0,"pct":43.75},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/helpReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/importReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/importedCollectionsReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/index.tsx": {"lines":{"total":42,"covered":42,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":42,"covered":42,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/jsPaneReducer.ts": {"lines":{"total":16,"covered":5,"skipped":0,"pct":31.25},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":5,"skipped":0,"pct":31.25},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/notificationsReducer.ts": {"lines":{"total":21,"covered":6,"skipped":0,"pct":28.57},"functions":{"total":8,"covered":0,"skipped":0,"pct":0},"statements":{"total":21,"covered":6,"skipped":0,"pct":28.57},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/onBoardingReducer.ts": {"lines":{"total":25,"covered":6,"skipped":0,"pct":24},"functions":{"total":19,"covered":0,"skipped":0,"pct":0},"statements":{"total":25,"covered":6,"skipped":0,"pct":24},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/orgReducer.ts": {"lines":{"total":37,"covered":5,"skipped":0,"pct":13.51},"functions":{"total":24,"covered":0,"skipped":0,"pct":0},"statements":{"total":37,"covered":5,"skipped":0,"pct":13.51},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/pageCanvasStructureReducer.ts": {"lines":{"total":12,"covered":10,"skipped":0,"pct":83.33},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":12,"covered":10,"skipped":0,"pct":83.33},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/pageWidgetsReducer.ts": {"lines":{"total":12,"covered":11,"skipped":0,"pct":91.67},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":12,"covered":11,"skipped":0,"pct":91.67},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/propertyPaneReducer.tsx": {"lines":{"total":22,"covered":15,"skipped":0,"pct":68.18},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":24,"covered":17,"skipped":0,"pct":70.83},"branches":{"total":19,"covered":9,"skipped":0,"pct":47.37}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/providerReducer.ts": {"lines":{"total":43,"covered":5,"skipped":0,"pct":11.63},"functions":{"total":23,"covered":0,"skipped":0,"pct":0},"statements":{"total":44,"covered":5,"skipped":0,"pct":11.36},"branches":{"total":8,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/queryPaneReducer.ts": {"lines":{"total":21,"covered":6,"skipped":0,"pct":28.57},"functions":{"total":13,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":6,"skipped":0,"pct":26.09},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/releasesReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/tableFilterPaneReducer.tsx": {"lines":{"total":19,"covered":6,"skipped":0,"pct":31.58},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":21,"covered":6,"skipped":0,"pct":28.57},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/themeReducer.ts": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":15,"covered":7,"skipped":0,"pct":46.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/tourReducer.ts": {"lines":{"total":8,"covered":5,"skipped":0,"pct":62.5},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":5,"skipped":0,"pct":62.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/usersReducer.ts": {"lines":{"total":33,"covered":7,"skipped":0,"pct":21.21},"functions":{"total":11,"covered":0,"skipped":0,"pct":0},"statements":{"total":33,"covered":7,"skipped":0,"pct":21.21},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/websocketReducer.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/widgetSidebarReducer.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/commentsReducer.ts": {"lines":{"total":71,"covered":45,"skipped":0,"pct":63.38},"functions":{"total":33,"covered":18,"skipped":0,"pct":54.55},"statements":{"total":81,"covered":47,"skipped":0,"pct":58.02},"branches":{"total":10,"covered":5,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/common.ts": {"lines":{"total":18,"covered":2,"skipped":0,"pct":11.11},"functions":{"total":4,"covered":0,"skipped":0,"pct":0},"statements":{"total":23,"covered":4,"skipped":0,"pct":17.39},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleAddCommentToThreadSuccess.ts": {"lines":{"total":8,"covered":8,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":10,"covered":10,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleCreateNewCommentThreadSuccess.ts": {"lines":{"total":10,"covered":9,"skipped":0,"pct":90},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":13,"covered":12,"skipped":0,"pct":92.31},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleDeleteCommentEvent.ts": {"lines":{"total":6,"covered":3,"skipped":0,"pct":50},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":3,"skipped":0,"pct":37.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleDeleteCommentThreadEvent.ts": {"lines":{"total":6,"covered":3,"skipped":0,"pct":50},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":8,"covered":3,"skipped":0,"pct":37.5},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleDragCommentThread.ts": {"lines":{"total":24,"covered":4,"skipped":0,"pct":16.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":27,"covered":4,"skipped":0,"pct":14.81},"branches":{"total":14,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleFetchApplicationCommentsSuccess.ts": {"lines":{"total":13,"covered":13,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":4,"covered":3,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleNewCommentThreadEvent.ts": {"lines":{"total":15,"covered":13,"skipped":0,"pct":86.67},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":13,"skipped":0,"pct":86.67},"branches":{"total":8,"covered":6,"skipped":0,"pct":75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentEvent.ts": {"lines":{"total":10,"covered":2,"skipped":0,"pct":20},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":2,"skipped":0,"pct":15.38},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentThreadEvent.ts": {"lines":{"total":15,"covered":15,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":15,"skipped":0,"pct":100},"branches":{"total":38,"covered":27,"skipped":0,"pct":71.05}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/handleUpdateCommentThreadSuccess.ts": {"lines":{"total":14,"covered":13,"skipped":0,"pct":92.86},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":40,"covered":24,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/reducers/uiReducers/commentsReducer/testFixtures.ts": {"lines":{"total":9,"covered":9,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/resizable/index.tsx": {"lines":{"total":71,"covered":43,"skipped":0,"pct":60.56},"functions":{"total":20,"covered":7,"skipped":0,"pct":35},"statements":{"total":82,"covered":48,"skipped":0,"pct":58.54},"branches":{"total":40,"covered":16,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionSagas.ts": {"lines":{"total":311,"covered":41,"skipped":0,"pct":13.18},"functions":{"total":27,"covered":1,"skipped":0,"pct":3.7},"statements":{"total":376,"covered":41,"skipped":0,"pct":10.9},"branches":{"total":129,"covered":1,"skipped":0,"pct":0.78}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ApiPaneSagas.ts": {"lines":{"total":184,"covered":32,"skipped":0,"pct":17.39},"functions":{"total":28,"covered":2,"skipped":0,"pct":7.14},"statements":{"total":213,"covered":33,"skipped":0,"pct":15.49},"branches":{"total":109,"covered":2,"skipped":0,"pct":1.83}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ApplicationSagas.tsx": {"lines":{"total":171,"covered":40,"skipped":0,"pct":23.39},"functions":{"total":22,"covered":2,"skipped":0,"pct":9.09},"statements":{"total":202,"covered":41,"skipped":0,"pct":20.3},"branches":{"total":67,"covered":5,"skipped":0,"pct":7.46}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/BatchSagas.tsx": {"lines":{"total":25,"covered":22,"skipped":0,"pct":88},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":31,"covered":27,"skipped":0,"pct":87.1},"branches":{"total":12,"covered":11,"skipped":0,"pct":91.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/CollectionSagas.ts": {"lines":{"total":12,"covered":7,"skipped":0,"pct":58.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":14,"covered":7,"skipped":0,"pct":50},"branches":{"total":3,"covered":1,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/CurlImportSagas.ts": {"lines":{"total":31,"covered":17,"skipped":0,"pct":54.84},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":35,"covered":17,"skipped":0,"pct":48.57},"branches":{"total":3,"covered":1,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/DatasourcesSagas.ts": {"lines":{"total":263,"covered":40,"skipped":0,"pct":15.21},"functions":{"total":24,"covered":2,"skipped":0,"pct":8.33},"statements":{"total":319,"covered":41,"skipped":0,"pct":12.85},"branches":{"total":119,"covered":2,"skipped":0,"pct":1.68}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/DebuggerSagas.ts": {"lines":{"total":161,"covered":28,"skipped":0,"pct":17.39},"functions":{"total":17,"covered":3,"skipped":0,"pct":17.65},"statements":{"total":179,"covered":28,"skipped":0,"pct":15.64},"branches":{"total":155,"covered":7,"skipped":0,"pct":4.52}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/DraggingCanvasSagas.ts": {"lines":{"total":39,"covered":30,"skipped":0,"pct":76.92},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":41,"covered":31,"skipped":0,"pct":75.61},"branches":{"total":17,"covered":4,"skipped":0,"pct":23.53}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ErrorSagas.tsx": {"lines":{"total":102,"covered":58,"skipped":0,"pct":56.86},"functions":{"total":18,"covered":7,"skipped":0,"pct":38.89},"statements":{"total":113,"covered":65,"skipped":0,"pct":57.52},"branches":{"total":62,"covered":24,"skipped":0,"pct":38.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/EvaluationsSaga.ts": {"lines":{"total":141,"covered":35,"skipped":0,"pct":24.82},"functions":{"total":20,"covered":2,"skipped":0,"pct":10},"statements":{"total":162,"covered":35,"skipped":0,"pct":21.6},"branches":{"total":63,"covered":1,"skipped":0,"pct":1.59}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/FormEvaluationSaga.ts": {"lines":{"total":61,"covered":16,"skipped":0,"pct":26.23},"functions":{"total":12,"covered":3,"skipped":0,"pct":25},"statements":{"total":68,"covered":16,"skipped":0,"pct":23.53},"branches":{"total":31,"covered":5,"skipped":0,"pct":16.13}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/GlobalSearchSagas.ts": {"lines":{"total":35,"covered":19,"skipped":0,"pct":54.29},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":40,"covered":21,"skipped":0,"pct":52.5},"branches":{"total":23,"covered":3,"skipped":0,"pct":13.04}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/InitSagas.ts": {"lines":{"total":98,"covered":46,"skipped":0,"pct":46.94},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":119,"covered":50,"skipped":0,"pct":42.02},"branches":{"total":39,"covered":5,"skipped":0,"pct":12.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/JSActionSagas.ts": {"lines":{"total":137,"covered":26,"skipped":0,"pct":18.98},"functions":{"total":15,"covered":1,"skipped":0,"pct":6.67},"statements":{"total":168,"covered":27,"skipped":0,"pct":16.07},"branches":{"total":49,"covered":1,"skipped":0,"pct":2.04}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/JSPaneSagas.ts": {"lines":{"total":127,"covered":31,"skipped":0,"pct":24.41},"functions":{"total":13,"covered":1,"skipped":0,"pct":7.69},"statements":{"total":153,"covered":31,"skipped":0,"pct":20.26},"branches":{"total":66,"covered":1,"skipped":0,"pct":1.52}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ModalSagas.ts": {"lines":{"total":56,"covered":27,"skipped":0,"pct":48.21},"functions":{"total":10,"covered":3,"skipped":0,"pct":30},"statements":{"total":61,"covered":29,"skipped":0,"pct":47.54},"branches":{"total":24,"covered":6,"skipped":0,"pct":25}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/NotificationsSagas.ts": {"lines":{"total":34,"covered":8,"skipped":0,"pct":23.53},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":44,"covered":8,"skipped":0,"pct":18.18},"branches":{"total":12,"covered":1,"skipped":0,"pct":8.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/OnboardingSagas.ts": {"lines":{"total":331,"covered":57,"skipped":0,"pct":17.22},"functions":{"total":54,"covered":6,"skipped":0,"pct":11.11},"statements":{"total":389,"covered":66,"skipped":0,"pct":16.97},"branches":{"total":144,"covered":2,"skipped":0,"pct":1.39}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/OrgSagas.ts": {"lines":{"total":106,"covered":24,"skipped":0,"pct":22.64},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":133,"covered":24,"skipped":0,"pct":18.05},"branches":{"total":37,"covered":1,"skipped":0,"pct":2.7}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/PageSagas.tsx": {"lines":{"total":282,"covered":71,"skipped":0,"pct":25.18},"functions":{"total":35,"covered":5,"skipped":0,"pct":14.29},"statements":{"total":329,"covered":77,"skipped":0,"pct":23.4},"branches":{"total":84,"covered":5,"skipped":0,"pct":5.95}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/PluginSagas.ts": {"lines":{"total":80,"covered":14,"skipped":0,"pct":17.5},"functions":{"total":10,"covered":1,"skipped":0,"pct":10},"statements":{"total":96,"covered":14,"skipped":0,"pct":14.58},"branches":{"total":34,"covered":1,"skipped":0,"pct":2.94}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/PostEvaluationSagas.ts": {"lines":{"total":115,"covered":25,"skipped":0,"pct":21.74},"functions":{"total":12,"covered":0,"skipped":0,"pct":0},"statements":{"total":141,"covered":25,"skipped":0,"pct":17.73},"branches":{"total":93,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ProvidersSaga.ts": {"lines":{"total":63,"covered":19,"skipped":0,"pct":30.16},"functions":{"total":8,"covered":1,"skipped":0,"pct":12.5},"statements":{"total":78,"covered":19,"skipped":0,"pct":24.36},"branches":{"total":19,"covered":1,"skipped":0,"pct":5.26}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/QueryPaneSagas.ts": {"lines":{"total":89,"covered":25,"skipped":0,"pct":28.09},"functions":{"total":8,"covered":2,"skipped":0,"pct":25},"statements":{"total":109,"covered":26,"skipped":0,"pct":23.85},"branches":{"total":39,"covered":5,"skipped":0,"pct":12.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/RecentEntitiesSagas.ts": {"lines":{"total":32,"covered":13,"skipped":0,"pct":40.63},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":32,"covered":13,"skipped":0,"pct":40.63},"branches":{"total":80,"covered":8,"skipped":0,"pct":10}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/SaaSPaneSagas.ts": {"lines":{"total":34,"covered":16,"skipped":0,"pct":47.06},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":46,"covered":17,"skipped":0,"pct":36.96},"branches":{"total":15,"covered":5,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/SelectionCanvasSagas.ts": {"lines":{"total":41,"covered":41,"skipped":0,"pct":100},"functions":{"total":8,"covered":8,"skipped":0,"pct":100},"statements":{"total":46,"covered":46,"skipped":0,"pct":100},"branches":{"total":18,"covered":13,"skipped":0,"pct":72.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/SnipingModeSagas.ts": {"lines":{"total":110,"covered":20,"skipped":0,"pct":18.18},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":114,"covered":20,"skipped":0,"pct":17.54},"branches":{"total":29,"covered":1,"skipped":0,"pct":3.45}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ThemeSaga.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/TourSagas.ts": {"lines":{"total":15,"covered":7,"skipped":0,"pct":46.67},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":18,"covered":7,"skipped":0,"pct":38.89},"branches":{"total":7,"covered":1,"skipped":0,"pct":14.29}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/UtilSagas.ts": {"lines":{"total":7,"covered":5,"skipped":0,"pct":71.43},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":7,"covered":5,"skipped":0,"pct":71.43},"branches":{"total":1,"covered":1,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetBlueprintSagas.ts": {"lines":{"total":50,"covered":28,"skipped":0,"pct":56},"functions":{"total":9,"covered":4,"skipped":0,"pct":44.44},"statements":{"total":56,"covered":33,"skipped":0,"pct":58.93},"branches":{"total":32,"covered":12,"skipped":0,"pct":37.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetBlueprintSagasEnums.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetEnhancementHelpers.ts": {"lines":{"total":65,"covered":26,"skipped":0,"pct":40},"functions":{"total":14,"covered":2,"skipped":0,"pct":14.29},"statements":{"total":73,"covered":27,"skipped":0,"pct":36.99},"branches":{"total":47,"covered":13,"skipped":0,"pct":27.66}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetLoadingSaga.ts": {"lines":{"total":50,"covered":15,"skipped":0,"pct":30},"functions":{"total":13,"covered":2,"skipped":0,"pct":15.38},"statements":{"total":57,"covered":15,"skipped":0,"pct":26.32},"branches":{"total":14,"covered":3,"skipped":0,"pct":21.43}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetOperationSagas.tsx": {"lines":{"total":579,"covered":314,"skipped":0,"pct":54.23},"functions":{"total":76,"covered":41,"skipped":0,"pct":53.95},"statements":{"total":666,"covered":359,"skipped":0,"pct":53.9},"branches":{"total":315,"covered":116,"skipped":0,"pct":36.83}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetOperationUtils.ts": {"lines":{"total":217,"covered":132,"skipped":0,"pct":60.83},"functions":{"total":43,"covered":24,"skipped":0,"pct":55.81},"statements":{"total":252,"covered":155,"skipped":0,"pct":61.51},"branches":{"total":179,"covered":69,"skipped":0,"pct":38.55}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetSelectionSagas.ts": {"lines":{"total":125,"covered":113,"skipped":0,"pct":90.4},"functions":{"total":21,"covered":21,"skipped":0,"pct":100},"statements":{"total":146,"covered":133,"skipped":0,"pct":91.1},"branches":{"total":93,"covered":81,"skipped":0,"pct":87.1}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WidgetSidebarSagas.tsx": {"lines":{"total":10,"covered":7,"skipped":0,"pct":70},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":11,"covered":7,"skipped":0,"pct":63.64},"branches":{"total":1,"covered":1,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/index.tsx": {"lines":{"total":51,"covered":48,"skipped":0,"pct":94.12},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":53,"covered":49,"skipped":0,"pct":92.45},"branches":{"total":5,"covered":3,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/selectors.tsx": {"lines":{"total":84,"covered":57,"skipped":0,"pct":67.86},"functions":{"total":33,"covered":18,"skipped":0,"pct":54.55},"statements":{"total":110,"covered":81,"skipped":0,"pct":73.64},"branches":{"total":26,"covered":15,"skipped":0,"pct":57.69}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/userSagas.tsx": {"lines":{"total":181,"covered":36,"skipped":0,"pct":19.89},"functions":{"total":18,"covered":1,"skipped":0,"pct":5.56},"statements":{"total":217,"covered":36,"skipped":0,"pct":16.59},"branches":{"total":62,"covered":1,"skipped":0,"pct":1.61}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/ActionExecutionSagas.ts": {"lines":{"total":76,"covered":21,"skipped":0,"pct":27.63},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":80,"covered":23,"skipped":0,"pct":28.75},"branches":{"total":36,"covered":1,"skipped":0,"pct":2.78}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/CopyActionSaga.ts": {"lines":{"total":9,"covered":4,"skipped":0,"pct":44.44},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":4,"skipped":0,"pct":44.44},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/DownloadActionSaga.ts": {"lines":{"total":26,"covered":10,"skipped":0,"pct":38.46},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":26,"covered":10,"skipped":0,"pct":38.46},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/ModalSagas.ts": {"lines":{"total":7,"covered":4,"skipped":0,"pct":57.14},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":7,"covered":4,"skipped":0,"pct":57.14},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/NavigateActionSaga.ts": {"lines":{"total":41,"covered":15,"skipped":0,"pct":36.59},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":45,"covered":15,"skipped":0,"pct":33.33},"branches":{"total":25,"covered":2,"skipped":0,"pct":8}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/PluginActionSaga.ts": {"lines":{"total":214,"covered":44,"skipped":0,"pct":20.56},"functions":{"total":23,"covered":4,"skipped":0,"pct":17.39},"statements":{"total":252,"covered":47,"skipped":0,"pct":18.65},"branches":{"total":100,"covered":3,"skipped":0,"pct":3}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/PromiseActionSaga.ts": {"lines":{"total":37,"covered":11,"skipped":0,"pct":29.73},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":44,"covered":15,"skipped":0,"pct":34.09},"branches":{"total":23,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/ResetWidgetActionSaga.ts": {"lines":{"total":15,"covered":6,"skipped":0,"pct":40},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":16,"covered":6,"skipped":0,"pct":37.5},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/ShowAlertActionSaga.ts": {"lines":{"total":20,"covered":5,"skipped":0,"pct":25},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":20,"covered":5,"skipped":0,"pct":25},"branches":{"total":12,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/ActionExecution/StoreActionSaga.ts": {"lines":{"total":22,"covered":8,"skipped":0,"pct":36.36},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":24,"covered":8,"skipped":0,"pct":33.33},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/CommentSagas/index.ts": {"lines":{"total":114,"covered":56,"skipped":0,"pct":49.12},"functions":{"total":20,"covered":11,"skipped":0,"pct":55},"statements":{"total":147,"covered":72,"skipped":0,"pct":48.98},"branches":{"total":39,"covered":8,"skipped":0,"pct":20.51}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WebsocketSagas/WebsocketSagas.ts": {"lines":{"total":52,"covered":11,"skipped":0,"pct":21.15},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":61,"covered":11,"skipped":0,"pct":18.03},"branches":{"total":17,"covered":2,"skipped":0,"pct":11.76}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WebsocketSagas/constants.ts": {"lines":{"total":1,"covered":1,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":1,"covered":1,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/sagas/WebsocketSagas/handleSocketEvent.ts": {"lines":{"total":53,"covered":10,"skipped":0,"pct":18.87},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":56,"covered":10,"skipped":0,"pct":17.86},"branches":{"total":92,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/appCollabSelectors.tsx": {"lines":{"total":7,"covered":6,"skipped":0,"pct":85.71},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":12,"covered":9,"skipped":0,"pct":75},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/appViewSelectors.tsx": {"lines":{"total":15,"covered":10,"skipped":0,"pct":66.67},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":16,"covered":11,"skipped":0,"pct":68.75},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/applicationSelectors.tsx": {"lines":{"total":61,"covered":37,"skipped":0,"pct":60.66},"functions":{"total":24,"covered":11,"skipped":0,"pct":45.83},"statements":{"total":79,"covered":54,"skipped":0,"pct":68.35},"branches":{"total":22,"covered":6,"skipped":0,"pct":27.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/commentsSelectors.ts": {"lines":{"total":80,"covered":66,"skipped":0,"pct":82.5},"functions":{"total":28,"covered":19,"skipped":0,"pct":67.86},"statements":{"total":113,"covered":87,"skipped":0,"pct":76.99},"branches":{"total":66,"covered":36,"skipped":0,"pct":54.55}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/crudInfoModalSelectors.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/dataTreeSelectors.ts": {"lines":{"total":24,"covered":16,"skipped":0,"pct":66.67},"functions":{"total":6,"covered":3,"skipped":0,"pct":50},"statements":{"total":27,"covered":19,"skipped":0,"pct":70.37},"branches":{"total":10,"covered":3,"skipped":0,"pct":30}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/debuggerSelectors.tsx": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":11,"covered":10,"skipped":0,"pct":90.91},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/editorSelectors.tsx": {"lines":{"total":136,"covered":93,"skipped":0,"pct":68.38},"functions":{"total":55,"covered":31,"skipped":0,"pct":56.36},"statements":{"total":167,"covered":119,"skipped":0,"pct":71.26},"branches":{"total":61,"covered":37,"skipped":0,"pct":60.66}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/entitiesSelector.ts": {"lines":{"total":228,"covered":117,"skipped":0,"pct":51.32},"functions":{"total":119,"covered":38,"skipped":0,"pct":31.93},"statements":{"total":308,"covered":166,"skipped":0,"pct":53.9},"branches":{"total":84,"covered":8,"skipped":0,"pct":9.52}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/errorSelectors.tsx": {"lines":{"total":4,"covered":2,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/formSelectors.ts": {"lines":{"total":20,"covered":6,"skipped":0,"pct":30},"functions":{"total":6,"covered":0,"skipped":0,"pct":0},"statements":{"total":24,"covered":10,"skipped":0,"pct":41.67},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/globalSearchSelectors.tsx": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":7,"covered":6,"skipped":0,"pct":85.71},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/helpSelectors.tsx": {"lines":{"total":4,"covered":2,"skipped":0,"pct":50},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/onboardingSelectors.tsx": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":8,"covered":7,"skipped":0,"pct":87.5},"statements":{"total":24,"covered":23,"skipped":0,"pct":95.83},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/organizationSelectors.tsx": {"lines":{"total":25,"covered":17,"skipped":0,"pct":68},"functions":{"total":18,"covered":6,"skipped":0,"pct":33.33},"statements":{"total":40,"covered":28,"skipped":0,"pct":70},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/pageListSelectors.tsx": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":5,"covered":3,"skipped":0,"pct":60},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/propertyPaneSelectors.tsx": {"lines":{"total":59,"covered":53,"skipped":0,"pct":89.83},"functions":{"total":11,"covered":11,"skipped":0,"pct":100},"statements":{"total":69,"covered":61,"skipped":0,"pct":88.41},"branches":{"total":50,"covered":36,"skipped":0,"pct":72}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/tableFilterSelectors.tsx": {"lines":{"total":10,"covered":10,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":17,"covered":10,"skipped":0,"pct":58.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/themeSelectors.tsx": {"lines":{"total":13,"covered":12,"skipped":0,"pct":92.31},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":4,"covered":4,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/tourSelectors.tsx": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":8,"covered":8,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/ui.tsx": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":6,"covered":6,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/usersSelectors.tsx": {"lines":{"total":9,"covered":7,"skipped":0,"pct":77.78},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":15,"covered":12,"skipped":0,"pct":80},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/widgetEnhancementSelectors.ts": {"lines":{"total":21,"covered":14,"skipped":0,"pct":66.67},"functions":{"total":6,"covered":4,"skipped":0,"pct":66.67},"statements":{"total":25,"covered":17,"skipped":0,"pct":68},"branches":{"total":12,"covered":5,"skipped":0,"pct":41.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/selectors/widgetSelectors.ts": {"lines":{"total":14,"covered":13,"skipped":0,"pct":92.86},"functions":{"total":6,"covered":5,"skipped":0,"pct":83.33},"statements":{"total":17,"covered":15,"skipped":0,"pct":88.24},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/templates/default.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/transformers/CurlImportTransformer.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/transformers/RestAPIDatasourceFormTransformer.ts": {"lines":{"total":66,"covered":9,"skipped":0,"pct":13.64},"functions":{"total":9,"covered":0,"skipped":0,"pct":0},"statements":{"total":74,"covered":11,"skipped":0,"pct":14.86},"branches":{"total":85,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/transformers/RestActionTransformer.ts": {"lines":{"total":21,"covered":21,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":24,"covered":23,"skipped":0,"pct":95.83},"branches":{"total":22,"covered":18,"skipped":0,"pct":81.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/AnalyticsUtil.tsx": {"lines":{"total":92,"covered":27,"skipped":0,"pct":29.35},"functions":{"total":13,"covered":4,"skipped":0,"pct":30.77},"statements":{"total":96,"covered":28,"skipped":0,"pct":29.17},"branches":{"total":39,"covered":4,"skipped":0,"pct":10.26}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/ApiPaneUtils.tsx": {"lines":{"total":19,"covered":19,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":20,"covered":20,"skipped":0,"pct":100},"branches":{"total":19,"covered":15,"skipped":0,"pct":78.95}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/AppsmithConsole.ts": {"lines":{"total":14,"covered":9,"skipped":0,"pct":64.29},"functions":{"total":8,"covered":4,"skipped":0,"pct":50},"statements":{"total":14,"covered":9,"skipped":0,"pct":64.29},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/AppsmithUtils.tsx": {"lines":{"total":167,"covered":86,"skipped":0,"pct":51.5},"functions":{"total":43,"covered":15,"skipped":0,"pct":34.88},"statements":{"total":195,"covered":110,"skipped":0,"pct":56.41},"branches":{"total":88,"covered":30,"skipped":0,"pct":34.09}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/DynamicBindingUtils.ts": {"lines":{"total":126,"covered":111,"skipped":0,"pct":88.1},"functions":{"total":23,"covered":18,"skipped":0,"pct":78.26},"statements":{"total":144,"covered":129,"skipped":0,"pct":89.58},"branches":{"total":79,"covered":66,"skipped":0,"pct":83.54}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/EditorUtils.ts": {"lines":{"total":7,"covered":7,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":9,"covered":9,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/FormControlFactory.tsx": {"lines":{"total":16,"covered":7,"skipped":0,"pct":43.75},"functions":{"total":4,"covered":1,"skipped":0,"pct":25},"statements":{"total":16,"covered":7,"skipped":0,"pct":43.75},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/FormControlRegistry.tsx": {"lines":{"total":42,"covered":18,"skipped":0,"pct":42.86},"functions":{"total":14,"covered":1,"skipped":0,"pct":7.14},"statements":{"total":42,"covered":18,"skipped":0,"pct":42.86},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/GenerateCrudUtil.ts": {"lines":{"total":9,"covered":1,"skipped":0,"pct":11.11},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":10,"covered":2,"skipped":0,"pct":20},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/JSPaneUtils.tsx": {"lines":{"total":46,"covered":1,"skipped":0,"pct":2.17},"functions":{"total":7,"covered":0,"skipped":0,"pct":0},"statements":{"total":57,"covered":2,"skipped":0,"pct":3.51},"branches":{"total":25,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/PerformanceTracker.ts": {"lines":{"total":114,"covered":71,"skipped":0,"pct":62.28},"functions":{"total":11,"covered":8,"skipped":0,"pct":72.73},"statements":{"total":117,"covered":72,"skipped":0,"pct":61.54},"branches":{"total":79,"covered":20,"skipped":0,"pct":25.32}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/PropertyControlFactory.tsx": {"lines":{"total":19,"covered":14,"skipped":0,"pct":73.68},"functions":{"total":4,"covered":3,"skipped":0,"pct":75},"statements":{"total":20,"covered":14,"skipped":0,"pct":70},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/PropertyControlRegistry.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/TypeHelpers.ts": {"lines":{"total":25,"covered":22,"skipped":0,"pct":88},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":34,"covered":29,"skipped":0,"pct":85.29},"branches":{"total":18,"covered":15,"skipped":0,"pct":83.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/WidgetFactory.tsx": {"lines":{"total":85,"covered":61,"skipped":0,"pct":71.76},"functions":{"total":16,"covered":10,"skipped":0,"pct":62.5},"statements":{"total":85,"covered":61,"skipped":0,"pct":71.76},"branches":{"total":32,"covered":22,"skipped":0,"pct":68.75}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/WidgetPropsUtils.tsx": {"lines":{"total":600,"covered":448,"skipped":0,"pct":74.67},"functions":{"total":97,"covered":69,"skipped":0,"pct":71.13},"statements":{"total":631,"covered":477,"skipped":0,"pct":75.59},"branches":{"total":534,"covered":356,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/WidgetRegistry.tsx": {"lines":{"total":117,"covered":93,"skipped":0,"pct":79.49},"functions":{"total":39,"covered":15,"skipped":0,"pct":38.46},"statements":{"total":117,"covered":93,"skipped":0,"pct":79.49},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/WorkerUtil.ts": {"lines":{"total":65,"covered":60,"skipped":0,"pct":92.31},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":79,"covered":71,"skipped":0,"pct":89.87},"branches":{"total":34,"covered":24,"skipped":0,"pct":70.59}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/canvasStructureHelpers.ts": {"lines":{"total":16,"covered":16,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":18,"covered":18,"skipped":0,"pct":100},"branches":{"total":20,"covered":19,"skipped":0,"pct":95}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/featureFlags.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/formhelpers.ts": {"lines":{"total":14,"covered":9,"skipped":0,"pct":64.29},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":19,"covered":14,"skipped":0,"pct":73.68},"branches":{"total":7,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/generators.tsx": {"lines":{"total":17,"covered":13,"skipped":0,"pct":76.47},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":27,"covered":22,"skipped":0,"pct":81.48},"branches":{"total":8,"covered":3,"skipped":0,"pct":37.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/helpers.tsx": {"lines":{"total":151,"covered":92,"skipped":0,"pct":60.93},"functions":{"total":31,"covered":14,"skipped":0,"pct":45.16},"statements":{"total":191,"covered":122,"skipped":0,"pct":63.87},"branches":{"total":95,"covered":36,"skipped":0,"pct":37.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/history.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/localStorage.tsx": {"lines":{"total":55,"covered":44,"skipped":0,"pct":80},"functions":{"total":9,"covered":9,"skipped":0,"pct":100},"statements":{"total":57,"covered":46,"skipped":0,"pct":80.7},"branches":{"total":18,"covered":9,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/storage.ts": {"lines":{"total":133,"covered":36,"skipped":0,"pct":27.07},"functions":{"total":39,"covered":5,"skipped":0,"pct":12.82},"statements":{"total":181,"covered":63,"skipped":0,"pct":34.81},"branches":{"total":22,"covered":3,"skipped":0,"pct":13.64}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/autocomplete/EntityDefinitions.ts": {"lines":{"total":29,"covered":8,"skipped":0,"pct":27.59},"functions":{"total":6,"covered":1,"skipped":0,"pct":16.67},"statements":{"total":32,"covered":9,"skipped":0,"pct":28.13},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/autocomplete/TernServer.ts": {"lines":{"total":374,"covered":206,"skipped":0,"pct":55.08},"functions":{"total":58,"covered":21,"skipped":0,"pct":36.21},"statements":{"total":424,"covered":214,"skipped":0,"pct":50.47},"branches":{"total":230,"covered":88,"skipped":0,"pct":38.26}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/autocomplete/customTreeTypeDefCreator.ts": {"lines":{"total":10,"covered":3,"skipped":0,"pct":30},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":11,"covered":4,"skipped":0,"pct":36.36},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/autocomplete/dataTreeTypeDefCreator.ts": {"lines":{"total":69,"covered":46,"skipped":0,"pct":66.67},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":81,"covered":57,"skipped":0,"pct":70.37},"branches":{"total":32,"covered":16,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/autocomplete/dataTypeSortRules.ts": {"lines":{"total":2,"covered":2,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":2,"covered":2,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/dragResizeHooks.tsx": {"lines":{"total":55,"covered":52,"skipped":0,"pct":94.55},"functions":{"total":17,"covered":14,"skipped":0,"pct":82.35},"statements":{"total":67,"covered":62,"skipped":0,"pct":92.54},"branches":{"total":26,"covered":22,"skipped":0,"pct":84.62}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/localstorage.tsx": {"lines":{"total":17,"covered":4,"skipped":0,"pct":23.53},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":19,"covered":4,"skipped":0,"pct":21.05},"branches":{"total":4,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useAllowEditorDragToSelect.ts": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":15,"covered":15,"skipped":0,"pct":100},"branches":{"total":6,"covered":6,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useBlocksToBeDraggedOnCanvas.ts": {"lines":{"total":111,"covered":106,"skipped":0,"pct":95.5},"functions":{"total":22,"covered":19,"skipped":0,"pct":86.36},"statements":{"total":117,"covered":112,"skipped":0,"pct":95.73},"branches":{"total":70,"covered":60,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useCanvasDragToScroll.ts": {"lines":{"total":42,"covered":41,"skipped":0,"pct":97.62},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":43,"covered":42,"skipped":0,"pct":97.67},"branches":{"total":43,"covered":39,"skipped":0,"pct":90.7}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useCanvasDragging.ts": {"lines":{"total":195,"covered":180,"skipped":0,"pct":92.31},"functions":{"total":21,"covered":18,"skipped":0,"pct":85.71},"statements":{"total":199,"covered":184,"skipped":0,"pct":92.46},"branches":{"total":193,"covered":146,"skipped":0,"pct":75.65}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useCanvasMinHeightUpdateHook.ts": {"lines":{"total":18,"covered":18,"skipped":0,"pct":100},"functions":{"total":3,"covered":3,"skipped":0,"pct":100},"statements":{"total":20,"covered":20,"skipped":0,"pct":100},"branches":{"total":10,"covered":10,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useClick.tsx": {"lines":{"total":20,"covered":16,"skipped":0,"pct":80},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":20,"covered":16,"skipped":0,"pct":80},"branches":{"total":14,"covered":9,"skipped":0,"pct":64.29}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useClickToSelectWidget.tsx": {"lines":{"total":69,"covered":44,"skipped":0,"pct":63.77},"functions":{"total":12,"covered":6,"skipped":0,"pct":50},"statements":{"total":72,"covered":47,"skipped":0,"pct":65.28},"branches":{"total":45,"covered":22,"skipped":0,"pct":48.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useClipboard.tsx": {"lines":{"total":21,"covered":5,"skipped":0,"pct":23.81},"functions":{"total":5,"covered":1,"skipped":0,"pct":20},"statements":{"total":21,"covered":5,"skipped":0,"pct":23.81},"branches":{"total":10,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useDynamicAppLayout.tsx": {"lines":{"total":46,"covered":44,"skipped":0,"pct":95.65},"functions":{"total":7,"covered":7,"skipped":0,"pct":100},"statements":{"total":52,"covered":50,"skipped":0,"pct":96.15},"branches":{"total":23,"covered":13,"skipped":0,"pct":56.52}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useIsScrolledToBottom.tsx": {"lines":{"total":15,"covered":15,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":21,"covered":20,"skipped":0,"pct":95.24},"branches":{"total":24,"covered":17,"skipped":0,"pct":70.83}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useOrg.tsx": {"lines":{"total":16,"covered":14,"skipped":0,"pct":87.5},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":17,"covered":15,"skipped":0,"pct":88.24},"branches":{"total":11,"covered":3,"skipped":0,"pct":27.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/usePositionedContainerZIndex.ts": {"lines":{"total":21,"covered":21,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":22,"covered":22,"skipped":0,"pct":100},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useProceedToNextTourStep.tsx": {"lines":{"total":14,"covered":14,"skipped":0,"pct":100},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":16,"covered":16,"skipped":0,"pct":100},"branches":{"total":5,"covered":2,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useScript.tsx": {"lines":{"total":38,"covered":10,"skipped":0,"pct":26.32},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":41,"covered":10,"skipped":0,"pct":24.39},"branches":{"total":20,"covered":4,"skipped":0,"pct":20}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/hooks/useWidgetSelection.ts": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":5,"covered":5,"skipped":0,"pct":100},"statements":{"total":12,"covered":12,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/migrations/IncorrectDynamicBindingPathLists.ts": {"lines":{"total":18,"covered":17,"skipped":0,"pct":94.44},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":19,"covered":18,"skipped":0,"pct":94.74},"branches":{"total":8,"covered":7,"skipped":0,"pct":87.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/migrations/MenuButtonWidget.ts": {"lines":{"total":12,"covered":8,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":9,"skipped":0,"pct":69.23},"branches":{"total":12,"covered":8,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/migrations/TableWidget.ts": {"lines":{"total":127,"covered":100,"skipped":0,"pct":78.74},"functions":{"total":18,"covered":15,"skipped":0,"pct":83.33},"statements":{"total":141,"covered":106,"skipped":0,"pct":75.18},"branches":{"total":132,"covered":93,"skipped":0,"pct":70.45}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/migrations/TextWidgetReplaceTextStyle.ts": {"lines":{"total":23,"covered":22,"skipped":0,"pct":95.65},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":24,"covered":23,"skipped":0,"pct":95.83},"branches":{"total":14,"covered":12,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/validation/common.ts": {"lines":{"total":57,"covered":12,"skipped":0,"pct":21.05},"functions":{"total":3,"covered":1,"skipped":0,"pct":33.33},"statements":{"total":58,"covered":13,"skipped":0,"pct":22.41},"branches":{"total":158,"covered":25,"skipped":0,"pct":15.82}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/utils/validation/getIsSafeURL.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":3,"covered":3,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/AudioRecorderWidget.tsx": {"lines":{"total":40,"covered":19,"skipped":0,"pct":47.5},"functions":{"total":8,"covered":4,"skipped":0,"pct":50},"statements":{"total":42,"covered":20,"skipped":0,"pct":47.62},"branches":{"total":7,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/BaseWidget.tsx": {"lines":{"total":117,"covered":88,"skipped":0,"pct":75.21},"functions":{"total":32,"covered":23,"skipped":0,"pct":71.88},"statements":{"total":122,"covered":93,"skipped":0,"pct":76.23},"branches":{"total":43,"covered":19,"skipped":0,"pct":44.19}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ButtonWidget.tsx": {"lines":{"total":49,"covered":31,"skipped":0,"pct":63.27},"functions":{"total":14,"covered":7,"skipped":0,"pct":50},"statements":{"total":50,"covered":32,"skipped":0,"pct":64},"branches":{"total":16,"covered":6,"skipped":0,"pct":37.5}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/CanvasWidget.tsx": {"lines":{"total":40,"covered":38,"skipped":0,"pct":95},"functions":{"total":8,"covered":7,"skipped":0,"pct":87.5},"statements":{"total":45,"covered":42,"skipped":0,"pct":93.33},"branches":{"total":15,"covered":10,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/CheckboxGroupWidget.tsx": {"lines":{"total":66,"covered":24,"skipped":0,"pct":36.36},"functions":{"total":19,"covered":5,"skipped":0,"pct":26.32},"statements":{"total":71,"covered":25,"skipped":0,"pct":35.21},"branches":{"total":24,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/CheckboxWidget.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":27,"covered":25,"skipped":0,"pct":92.59},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ContainerWidget.tsx": {"lines":{"total":53,"covered":51,"skipped":0,"pct":96.23},"functions":{"total":10,"covered":9,"skipped":0,"pct":90},"statements":{"total":56,"covered":54,"skipped":0,"pct":96.43},"branches":{"total":18,"covered":14,"skipped":0,"pct":77.78}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/DatePickerWidget.tsx": {"lines":{"total":74,"covered":24,"skipped":0,"pct":32.43},"functions":{"total":12,"covered":5,"skipped":0,"pct":41.67},"statements":{"total":76,"covered":25,"skipped":0,"pct":32.89},"branches":{"total":65,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/DatePickerWidget2.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":28,"covered":23,"skipped":0,"pct":82.14},"branches":{"total":3,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/DividerWidget.tsx": {"lines":{"total":16,"covered":14,"skipped":0,"pct":87.5},"functions":{"total":5,"covered":3,"skipped":0,"pct":60},"statements":{"total":17,"covered":15,"skipped":0,"pct":88.24},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/DropdownWidget.tsx": {"lines":{"total":43,"covered":24,"skipped":0,"pct":55.81},"functions":{"total":11,"covered":5,"skipped":0,"pct":45.45},"statements":{"total":48,"covered":25,"skipped":0,"pct":52.08},"branches":{"total":17,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/FileDataTypes.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":5,"covered":5,"skipped":0,"pct":100},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/FilepickerWidget.tsx": {"lines":{"total":90,"covered":34,"skipped":0,"pct":37.78},"functions":{"total":28,"covered":5,"skipped":0,"pct":17.86},"statements":{"total":91,"covered":35,"skipped":0,"pct":38.46},"branches":{"total":44,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/FilepickerWidgetV2.tsx": {"lines":{"total":100,"covered":36,"skipped":0,"pct":36},"functions":{"total":29,"covered":5,"skipped":0,"pct":17.24},"statements":{"total":104,"covered":37,"skipped":0,"pct":35.58},"branches":{"total":62,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/FormButtonWidget.tsx": {"lines":{"total":39,"covered":26,"skipped":0,"pct":66.67},"functions":{"total":9,"covered":5,"skipped":0,"pct":55.56},"statements":{"total":40,"covered":27,"skipped":0,"pct":67.5},"branches":{"total":25,"covered":8,"skipped":0,"pct":32}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/FormWidget.tsx": {"lines":{"total":47,"covered":41,"skipped":0,"pct":87.23},"functions":{"total":13,"covered":11,"skipped":0,"pct":84.62},"statements":{"total":51,"covered":44,"skipped":0,"pct":86.27},"branches":{"total":19,"covered":10,"skipped":0,"pct":52.63}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/IconButtonWidget.tsx": {"lines":{"total":32,"covered":16,"skipped":0,"pct":50},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":34,"covered":17,"skipped":0,"pct":50},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/IconWidget.tsx": {"lines":{"total":23,"covered":17,"skipped":0,"pct":73.91},"functions":{"total":6,"covered":2,"skipped":0,"pct":33.33},"statements":{"total":25,"covered":18,"skipped":0,"pct":72},"branches":{"total":7,"covered":2,"skipped":0,"pct":28.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/IframeWidget.tsx": {"lines":{"total":35,"covered":18,"skipped":0,"pct":51.43},"functions":{"total":7,"covered":3,"skipped":0,"pct":42.86},"statements":{"total":37,"covered":19,"skipped":0,"pct":51.35},"branches":{"total":13,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ImageWidget.tsx": {"lines":{"total":24,"covered":16,"skipped":0,"pct":66.67},"functions":{"total":7,"covered":2,"skipped":0,"pct":28.57},"statements":{"total":28,"covered":17,"skipped":0,"pct":60.71},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/InputWidget.tsx": {"lines":{"total":97,"covered":54,"skipped":0,"pct":55.67},"functions":{"total":22,"covered":13,"skipped":0,"pct":59.09},"statements":{"total":102,"covered":55,"skipped":0,"pct":53.92},"branches":{"total":70,"covered":16,"skipped":0,"pct":22.86}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/MapWidget.tsx": {"lines":{"total":60,"covered":29,"skipped":0,"pct":48.33},"functions":{"total":17,"covered":4,"skipped":0,"pct":23.53},"statements":{"total":63,"covered":30,"skipped":0,"pct":47.62},"branches":{"total":22,"covered":2,"skipped":0,"pct":9.09}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/MenuButtonWidget.tsx": {"lines":{"total":38,"covered":18,"skipped":0,"pct":47.37},"functions":{"total":11,"covered":3,"skipped":0,"pct":27.27},"statements":{"total":40,"covered":19,"skipped":0,"pct":47.5},"branches":{"total":11,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/MetaHOC.tsx": {"lines":{"total":59,"covered":49,"skipped":0,"pct":83.05},"functions":{"total":13,"covered":12,"skipped":0,"pct":92.31},"statements":{"total":68,"covered":56,"skipped":0,"pct":82.35},"branches":{"total":19,"covered":11,"skipped":0,"pct":57.89}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ModalWidget.tsx": {"lines":{"total":67,"covered":30,"skipped":0,"pct":44.78},"functions":{"total":15,"covered":2,"skipped":0,"pct":13.33},"statements":{"total":71,"covered":32,"skipped":0,"pct":45.07},"branches":{"total":21,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/MultiSelectWidget.tsx": {"lines":{"total":48,"covered":25,"skipped":0,"pct":52.08},"functions":{"total":12,"covered":5,"skipped":0,"pct":41.67},"statements":{"total":51,"covered":26,"skipped":0,"pct":50.98},"branches":{"total":21,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/RadioGroupWidget.tsx": {"lines":{"total":26,"covered":22,"skipped":0,"pct":84.62},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":28,"covered":23,"skipped":0,"pct":82.14},"branches":{"total":5,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/RichTextEditorWidget.tsx": {"lines":{"total":37,"covered":27,"skipped":0,"pct":72.97},"functions":{"total":12,"covered":6,"skipped":0,"pct":50},"statements":{"total":39,"covered":28,"skipped":0,"pct":71.79},"branches":{"total":9,"covered":2,"skipped":0,"pct":22.22}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/SkeletonWidget.tsx": {"lines":{"total":15,"covered":13,"skipped":0,"pct":86.67},"functions":{"total":4,"covered":2,"skipped":0,"pct":50},"statements":{"total":16,"covered":14,"skipped":0,"pct":87.5},"branches":{"total":2,"covered":2,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/StatboxWidget.tsx": {"lines":{"total":18,"covered":12,"skipped":0,"pct":66.67},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":19,"covered":13,"skipped":0,"pct":68.42},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/SwitchWidget.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":8,"covered":6,"skipped":0,"pct":75},"statements":{"total":27,"covered":25,"skipped":0,"pct":92.59},"branches":{"total":5,"covered":3,"skipped":0,"pct":60}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TextWidget.tsx": {"lines":{"total":17,"covered":16,"skipped":0,"pct":94.12},"functions":{"total":5,"covered":4,"skipped":0,"pct":80},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/VideoWidget.tsx": {"lines":{"total":36,"covered":27,"skipped":0,"pct":75},"functions":{"total":13,"covered":5,"skipped":0,"pct":38.46},"statements":{"total":44,"covered":28,"skipped":0,"pct":63.64},"branches":{"total":5,"covered":2,"skipped":0,"pct":40}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ChartWidget/index.tsx": {"lines":{"total":25,"covered":23,"skipped":0,"pct":92},"functions":{"total":9,"covered":7,"skipped":0,"pct":77.78},"statements":{"total":27,"covered":25,"skipped":0,"pct":92.59},"branches":{"total":3,"covered":2,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ChartWidget/propertyConfig.ts": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":11,"covered":11,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/ListComponent.tsx": {"lines":{"total":15,"covered":14,"skipped":0,"pct":93.33},"functions":{"total":6,"covered":5,"skipped":0,"pct":83.33},"statements":{"total":15,"covered":14,"skipped":0,"pct":93.33},"branches":{"total":18,"covered":12,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/ListPagination.tsx": {"lines":{"total":9,"covered":6,"skipped":0,"pct":66.67},"functions":{"total":3,"covered":0,"skipped":0,"pct":0},"statements":{"total":9,"covered":6,"skipped":0,"pct":66.67},"branches":{"total":6,"covered":2,"skipped":0,"pct":33.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/ListPropertyPaneConfig.ts": {"lines":{"total":13,"covered":7,"skipped":0,"pct":53.85},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":7,"skipped":0,"pct":53.85},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/ListWidget.tsx": {"lines":{"total":254,"covered":129,"skipped":0,"pct":50.79},"functions":{"total":47,"covered":20,"skipped":0,"pct":42.55},"statements":{"total":268,"covered":140,"skipped":0,"pct":52.24},"branches":{"total":157,"covered":52,"skipped":0,"pct":33.12}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/derived.js": {"lines":{"total":47,"covered":30,"skipped":0,"pct":63.83},"functions":{"total":8,"covered":5,"skipped":0,"pct":62.5},"statements":{"total":50,"covered":33,"skipped":0,"pct":66},"branches":{"total":24,"covered":10,"skipped":0,"pct":41.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/ListWidget/parseDerivedProperties.ts": {"lines":{"total":13,"covered":5,"skipped":0,"pct":38.46},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":5,"skipped":0,"pct":38.46},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/RateWidget/index.tsx": {"lines":{"total":42,"covered":22,"skipped":0,"pct":52.38},"functions":{"total":9,"covered":5,"skipped":0,"pct":55.56},"statements":{"total":44,"covered":23,"skipped":0,"pct":52.27},"branches":{"total":20,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TableWidget/TablePropertyPaneConfig.ts": {"lines":{"total":137,"covered":55,"skipped":0,"pct":40.15},"functions":{"total":32,"covered":21,"skipped":0,"pct":65.63},"statements":{"total":142,"covered":55,"skipped":0,"pct":38.73},"branches":{"total":98,"covered":10,"skipped":0,"pct":10.2}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TableWidget/TableWidgetConstants.ts": {"lines":{"total":5,"covered":5,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":7,"covered":7,"skipped":0,"pct":100},"branches":{"total":4,"covered":2,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TableWidget/derived.js": {"lines":{"total":172,"covered":93,"skipped":0,"pct":54.07},"functions":{"total":38,"covered":15,"skipped":0,"pct":39.47},"statements":{"total":189,"covered":103,"skipped":0,"pct":54.5},"branches":{"total":140,"covered":75,"skipped":0,"pct":53.57}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TableWidget/index.tsx": {"lines":{"total":371,"covered":101,"skipped":0,"pct":27.22},"functions":{"total":52,"covered":13,"skipped":0,"pct":25},"statements":{"total":406,"covered":110,"skipped":0,"pct":27.09},"branches":{"total":301,"covered":18,"skipped":0,"pct":5.98}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/TableWidget/parseDerivedProperties.ts": {"lines":{"total":13,"covered":5,"skipped":0,"pct":38.46},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":13,"covered":5,"skipped":0,"pct":38.46},"branches":{"total":6,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/Tabs/TabsMigrator.tsx": {"lines":{"total":26,"covered":20,"skipped":0,"pct":76.92},"functions":{"total":5,"covered":2,"skipped":0,"pct":40},"statements":{"total":27,"covered":21,"skipped":0,"pct":77.78},"branches":{"total":2,"covered":0,"skipped":0,"pct":0}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/widgets/Tabs/TabsWidget.tsx": {"lines":{"total":132,"covered":89,"skipped":0,"pct":67.42},"functions":{"total":30,"covered":17,"skipped":0,"pct":56.67},"statements":{"total":140,"covered":95,"skipped":0,"pct":67.86},"branches":{"total":97,"covered":43,"skipped":0,"pct":44.33}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/Actions.ts": {"lines":{"total":105,"covered":80,"skipped":0,"pct":76.19},"functions":{"total":29,"covered":25,"skipped":0,"pct":86.21},"statements":{"total":121,"covered":93,"skipped":0,"pct":76.86},"branches":{"total":60,"covered":33,"skipped":0,"pct":55}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/DataTreeEvaluator.ts": {"lines":{"total":502,"covered":419,"skipped":0,"pct":83.47},"functions":{"total":77,"covered":64,"skipped":0,"pct":83.12},"statements":{"total":538,"covered":452,"skipped":0,"pct":84.01},"branches":{"total":234,"covered":152,"skipped":0,"pct":64.96}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/evaluate.ts": {"lines":{"total":72,"covered":68,"skipped":0,"pct":94.44},"functions":{"total":19,"covered":17,"skipped":0,"pct":89.47},"statements":{"total":73,"covered":69,"skipped":0,"pct":94.52},"branches":{"total":20,"covered":16,"skipped":0,"pct":80}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/evaluationSubstitution.ts": {"lines":{"total":59,"covered":59,"skipped":0,"pct":100},"functions":{"total":10,"covered":10,"skipped":0,"pct":100},"statements":{"total":63,"covered":63,"skipped":0,"pct":100},"branches":{"total":22,"covered":21,"skipped":0,"pct":95.45}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/evaluationUtils.ts": {"lines":{"total":209,"covered":167,"skipped":0,"pct":79.9},"functions":{"total":41,"covered":32,"skipped":0,"pct":78.05},"statements":{"total":250,"covered":203,"skipped":0,"pct":81.2},"branches":{"total":123,"covered":83,"skipped":0,"pct":67.48}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/src/workers/validations.ts": {"lines":{"total":250,"covered":203,"skipped":0,"pct":81.2},"functions":{"total":26,"covered":19,"skipped":0,"pct":73.08},"statements":{"total":273,"covered":216,"skipped":0,"pct":79.12},"branches":{"total":550,"covered":381,"skipped":0,"pct":69.27}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/customQueries.js": {"lines":{"total":19,"covered":18,"skipped":0,"pct":94.74},"functions":{"total":3,"covered":2,"skipped":0,"pct":66.67},"statements":{"total":20,"covered":19,"skipped":0,"pct":95},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/sagas.ts": {"lines":{"total":35,"covered":35,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":35,"covered":35,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/testCommon.ts": {"lines":{"total":49,"covered":49,"skipped":0,"pct":100},"functions":{"total":10,"covered":10,"skipped":0,"pct":100},"statements":{"total":60,"covered":60,"skipped":0,"pct":100},"branches":{"total":6,"covered":4,"skipped":0,"pct":66.67}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/testMockedWidgets.tsx": {"lines":{"total":11,"covered":11,"skipped":0,"pct":100},"functions":{"total":2,"covered":2,"skipped":0,"pct":100},"statements":{"total":13,"covered":13,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/testUtils.tsx": {"lines":{"total":37,"covered":36,"skipped":0,"pct":97.3},"functions":{"total":6,"covered":6,"skipped":0,"pct":100},"statements":{"total":40,"covered":38,"skipped":0,"pct":95},"branches":{"total":21,"covered":18,"skipped":0,"pct":85.71}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/WidgetFactoryUtils.ts": {"lines":{"total":16,"covered":15,"skipped":0,"pct":93.75},"functions":{"total":4,"covered":4,"skipped":0,"pct":100},"statements":{"total":18,"covered":17,"skipped":0,"pct":94.44},"branches":{"total":2,"covered":1,"skipped":0,"pct":50}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ButtonFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/CanvasFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ChartFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/CheckboxFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ContainerFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/DatepickerFactory.ts": {"lines":{"total":6,"covered":4,"skipped":0,"pct":66.67},"functions":{"total":2,"covered":0,"skipped":0,"pct":0},"statements":{"total":6,"covered":4,"skipped":0,"pct":66.67},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/DividerFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/DropdownFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/FilepickerFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/FormButtonFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/FormFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/IconFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ImageFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/InputFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ListFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/MapFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/ModalFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/RadiogroupFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/RichTextFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/SkeletonFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/SwitchFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/TableFactory.ts": {"lines":{"total":4,"covered":4,"skipped":0,"pct":100},"functions":{"total":1,"covered":1,"skipped":0,"pct":100},"statements":{"total":4,"covered":4,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/TabsFactory.ts": {"lines":{"total":6,"covered":5,"skipped":0,"pct":83.33},"functions":{"total":2,"covered":1,"skipped":0,"pct":50},"statements":{"total":6,"covered":5,"skipped":0,"pct":83.33},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/TextFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/VideoFactory.ts": {"lines":{"total":4,"covered":3,"skipped":0,"pct":75},"functions":{"total":1,"covered":0,"skipped":0,"pct":0},"statements":{"total":4,"covered":3,"skipped":0,"pct":75},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} +,"/Users/balajisoundararajan/projects/appsmith/app/client/test/factories/Widgets/WidgetTypeFactories.ts": {"lines":{"total":26,"covered":26,"skipped":0,"pct":100},"functions":{"total":0,"covered":0,"skipped":0,"pct":100},"statements":{"total":26,"covered":26,"skipped":0,"pct":100},"branches":{"total":0,"covered":0,"skipped":0,"pct":100}} }