"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.ProtectedRoute = void 0; exports.renderApp = renderApp; exports.teardownFleet = void 0; var _react = _interopRequireDefault(require("react")); var _reactDom = _interopRequireDefault(require("react-dom")); var _reactRouterDom = require("react-router-dom"); var _sharedUxRouter = require("@kbn/shared-ux-router"); var _hooks = require("./hooks"); var _app = require("./app"); /* * Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one * or more contributor license agreements. Licensed under the Elastic License * 2.0; you may not use this file except in compliance with the Elastic License * 2.0. */ const ProtectedRoute = ({ isAllowed = false, restrictedPath = '/', ...routeProps }) => { return isAllowed ? /*#__PURE__*/_react.default.createElement(_sharedUxRouter.Route, routeProps) : /*#__PURE__*/_react.default.createElement(_reactRouterDom.Redirect, { to: { pathname: restrictedPath } }); }; exports.ProtectedRoute = ProtectedRoute; const FleetApp = ({ startServices, config, history, kibanaVersion, extensions, setHeaderActionMenu, theme$ }) => { return /*#__PURE__*/_react.default.createElement(_app.FleetAppContext, { startServices: startServices, config: config, history: history, kibanaVersion: kibanaVersion, extensions: extensions, theme$: theme$ }, /*#__PURE__*/_react.default.createElement(_app.WithPermissionsAndSetup, null, /*#__PURE__*/_react.default.createElement(_app.AppRoutes, { setHeaderActionMenu: setHeaderActionMenu }))); }; function renderApp(startServices, { element, history, setHeaderActionMenu, theme$ }, config, kibanaVersion, extensions) { _reactDom.default.render( /*#__PURE__*/_react.default.createElement(FleetApp, { startServices: startServices, config: config, history: history, kibanaVersion: kibanaVersion, extensions: extensions, setHeaderActionMenu: setHeaderActionMenu, theme$: theme$ }), element); return () => { _reactDom.default.unmountComponentAtNode(element); }; } const teardownFleet = coreStart => { coreStart.chrome.docTitle.reset(); coreStart.chrome.setBreadcrumbs([]); _hooks.licenseService.stop(); }; exports.teardownFleet = teardownFleet;