import { Q as QueryClient, j as jsxRuntimeExports, I as I18nextProvider, m as QueryClientProvider, W as WidgetsCoreContextProvider, o as WidgetsLoggerContextProvider, F as FeaturesContextProvider, E as ErrorBoundary, q as Error, L as Loader } from "./root--MUkrqJu.js";
import { r as reactExports } from "./index-Z8-7Yniw.js";
import { i as i18n } from "./groupBy-kx3Z_7kt.js";
const View = reactExports.lazy(() => import("./view-D1iTuJ-F.js"));
function Root(props) {
  const { t } = i18n;
  const queryClient = reactExports.useRef();
  queryClient.current ?? (queryClient.current = new QueryClient({
    defaultOptions: {
      queries: {
        staleTime: Infinity,
        // Queries should never be refetched
        // Failed queries are not subject to staleTime, disable refetch
        refetchOnReconnect: false,
        refetchOnWindowFocus: false
      }
    }
  }));
  return /* @__PURE__ */ jsxRuntimeExports.jsx(I18nextProvider, { i18n, children: /* @__PURE__ */ jsxRuntimeExports.jsx(QueryClientProvider, { client: queryClient.current, children: /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetsCoreContextProvider, { core: props.core, children: /* @__PURE__ */ jsxRuntimeExports.jsx(WidgetsLoggerContextProvider, { logger: props.logger, children: /* @__PURE__ */ jsxRuntimeExports.jsx(FeaturesContextProvider, { features: props.config.features, children: /* @__PURE__ */ jsxRuntimeExports.jsx(
    ErrorBoundary,
    {
      fallbackRender: ({ error, resetErrorBoundary }) => /* @__PURE__ */ jsxRuntimeExports.jsx(Error, { error, reset: resetErrorBoundary, supportUrl: props.config.supportUrl }),
      onReset: () => {
        var _a;
        return (_a = queryClient.current) == null ? void 0 : _a.clear();
      },
      children: /* @__PURE__ */ jsxRuntimeExports.jsx(reactExports.Suspense, { fallback: /* @__PURE__ */ jsxRuntimeExports.jsx(Loader, { label: t("loading") }), children: /* @__PURE__ */ jsxRuntimeExports.jsx(View, { ...props }) })
    }
  ) }) }) }) }) });
}
export {
  Root as default
};
//# sourceMappingURL=root-Dt-LCcka.js.map
